如何理解 Golang 的参数传递都是值传递?
在 Golang 中函数之间传递变量时总是以值的方式传递的,无论是 int,string,bool,array 这样的内置类型(或者说原始的类型),还是 slice,channel,map 这样的引用类型,在函数间传递变量时,都是以值的方式传递,也就是说传递的都是值的副本。
PHP-FPM,Nginx,FastCGI 之间的关系
PHP intval 转换浮点数精度丢失问题
在 PHP 和其他一些语言都会存在这个问题,转换浮点数为整数的时候会出现精度丢失,如下:
|
|
解决办法:
1.转换成字符串再 intval
|
|
2.使用 round 函数替代 floatval
|
|
使用 Docker 搭建 Laravel 本地环境
服务器返回 502,503,504 原因及解决办法
502 bad gateway
问题原因:服务器作为网关或代理,从上游服务器收到无效响应。
nginx 在这里充当的是反向代理服务器的角色,是把http协议请求转成fastcgi协议的请求,通过 fastcgi_pass指令传递给 php-fpm进程,当 php-fpm 进程响应的内容是 nginx 无法理解的响应,就会返回 502 bad gateway
计算机的一些概念在生活中的场景
计算机中有很多概念和思想看上去很抽象,在生活中都可以找到对应的场景,反过来也是,只不过生活中的场景比较形象,当你把计算机中的概念和生活场景联系起来,其实发现解决问题的思路都很相似。
PHP 调试函数 debug_backtrace
Git 变基和合并
PHP 错误和异常处理
关于 PHP 的错误和异常处理,总结如下。
1.设置 PHP 错误级别
使用 error_reporting — 设置应该报告何种 PHP 错误。
Golang 中”泛型”的支持
PHP发送HTTP请求的几种方式
PHP 开发中我们常用 cURL 方式封装 HTTP 请求,什么是 cURL?
cURL 是一个用来传输数据的工具,支持多种协议,如在 Linux 下用 curl 命令行可以发送各种 HTTP 请求。PHP 的 cURL 是一个底层的库,它能根据不同协议跟各种服务器通讯,HTTP 协议是其中一种。
在 Laravel 中设置 Etag 缓存
本文介绍浏览器缓存 Etag 的概念,和客户端服务器如何生成和比较 Etag 的过程,以及使用 Laravel 中间件的示例。
什么是“ETag”?
Etag 是一种标识,一般附带在响应头部中,值是页面内容的哈希值,用来判断资源(页面,json,xml)有没有修改,如果没有修改,就返回 304 状态码,有修改则生成新的 Etag 值。
浏览器根据状态码判断是否缓存过期。
在 Linux 上如何清除内存的 Cache、Buffer 和交换空间
Golang append slice to slice
把一个 slice 追加到另一个 slice,以下两种方式都是把 s1 追加到 s0 中,但两种结果不同,注意区别。
片段1:
s0 := []interface{}{1, 100, 122}
s1 := []interface{}{3, 4, 5, 6}
s0 = append(s0, s1)
fmt.Println(“result:”, s0) //result: [1 100 122 [3 4 5 6]]
此时 s0 结果:result: [1 100 122 [3 4 5 6]]