1.PHP运行环境检测函数:php_sapi_name()

命令行执行输出:cli,命令行模式

HTTP/HTTPS访问输出:nginx+fastcgi 或 fpm-fcgi 或 apache2handler, 不同环境输出不同环境标识

2.php-fpm优化

pm = dynamic                      //进程数,动态分配  
pm.max_children = 24              //最大进程数  
pm.start_servers = 8              //刚启动时的进程数  
pm.min_spare_servers = 8          //服务器空闲时的最小进程数  
pm.max_spare_servers = 24         //服务器空闲时的最大进程数  
  
php_flag[display_errors] = off    //运行一段时间后,将错误提示信息关闭掉

php-fpm一个进程占了20M-30M之间,top看一下php-fpm占的内存百分比,估算一下就知道了。max_children,max_spare_servers不是越大越好。

3.PHP CURL 抓取页面内容为空,因为目标网页重定向跳转了造成无结果(同理图片也是同样的问题):

curl_setopt($c, CURLOPT_FOLLOWLOCATION, TRUE);

需要设置跟踪爬取重定向页面,否则,不会跟踪重定向页面。

※其他需要注意的是:来源地址(referer)、UA(user_agent)设置。

curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.186 Safari/537.36');

curl_setopt ($ch, CURLOPT_REFERER, 'https://www.baidu.com');

4.array_filter函数的使用

array_filter函数的功能是利用回调函数来对数组进行过滤,一直都以为用回调函数才能处理,却没有发现手册下面还有一句,如果没有回调函数,那么默认就是删除数组中值为false的项目。

(1).用回调函数过滤数组中的元素:

function test_odd($var)
{
    return($var & 1);
}
 
$a1=array("a","b",2,3,4);

print_r(array_filter($a1,"test_odd"));


# 预览结果
Array ( [3] => 3 )

(2).默认过滤参数中值为false或null的元素:

$entry = array(  
    0 => 'foo',  
    1 => false,  
    2 => -1,  
    3 => null,  
    4 => '' 
);  

print_r(array_filter($entry));  

#预览结果
Array  
(  
    [0] => foo  
    [2] => -1  
)

5.系统或API异常排查处理步骤

(1).查看系统error log;

(2).查看Nginx或Apache或其他服务器的访问日志、错误日志(access_log、error_log);

(3).DB字段是否有添加,或类型是否正确,一般字符串存成数字类型会变成1;

(4).服务器文件夹操作权限,一般如果是读写log文件或者上传文件等,可能存在原来系统目录的读写权限问题。

类似以下Nginx注意要点第12点:

Nginx的配置注意点

6.composer的基本使用

安装依赖包

获取定义的依赖到你的本地项目,只需要调用 composer.phar 运行 install 命令。

php composer.phar install

获取最新匹配的版本(根据你的 composer.json 文件)并将新版本更新进锁文件。

php composer.phar update

如果只想安装或更新一个依赖,你可以白名单它们:

php composer.phar update monolog/monolog [...] 如果需要指定版本号的话,添加「:version」,update 不能直接接收命令行的版本号:

使用 require

composer require xxxx:1.2.0

或者

vim composer.json
"require": {
    "xxxx": "1.2.0"
}
composer update xxxx

7.