如何发布自己的composer包?
1、编写composer.json文件,一个包是不是composer包,主要看是否有composer.json文件
2、上传到github
3、提交到Packagist(通过指定github地址的方式)
4、设置github自动更新到Packagist中(通过添加Webhook,即勾子)
1、编写composer.json文件,一个包是不是composer包,主要看是否有composer.json文件
2、上传到github
3、提交到Packagist(通过指定github地址的方式)
4、设置github自动更新到Packagist中(通过添加Webhook,即勾子)
/**
* 用注释的方式声明变量,注释的第一个斜杠后面必须要两个“*”号,
* 以“@var”开头,中间是变量类型,最后是变量名(带“$”符),当然变量类型可不写
* @var string $aa
*/
$test = ‘aa’;
$$test = “I’m aa”;
echo $aa;
Phpstorm直接执行php文件(不通过网页),主要用于调试一些“纯程序”的,无html的php代码(比如写一个排序算法)。
获取不到的原因,是因为使用了代理服务器,比如常见的用nginx作为反代服务器,后面有多台服务器提供服务器,反代服务器作为负载均衡服务器,这种情况一般要用$_SERVER[‘HTTP_X_FORWARDED_FOR’]来获取客户端的地址。
原生php可以通过$_SERVER[‘HTTP_X_REQUESTED_WITH’]的值是否等于XMLHttpRequest来判断,但基本上PHP框架都会有封装好的方法,当然其原理也是通过判断$_SERVER[‘HTTP_X_REQUESTED_WITH’]
fastcgi_params versus fastcgi.conf – nginx config history
大部分人可能都觉得`time()`与`$_SERVER[‘REQUEST_TIME’]`获取的时间都是一样的,其实在绝大部分情况下这两个值确实是一样的,但是有时候会有不同的值。
同时发起多个ajax异步请求,后面的请求都会被第一个请求阻塞的原因
php判断协议是https协议还是http协议
由于`+`号在url中会被转成空格,`/`号会被当成url分隔符,而我们又习惯在接收到参数后过滤参数两端的空格,所以如果在浏览器url上传输这些值,拿到值后再过滤掉两端的空格,然后再decode这个base64编码,结果肯定会出问题