几个命令行下的 php 技巧 - (sunznx) 振翅飞翔
26 September 2019

重定向 stdout

fclose(STDOUT);

$handle = fopen("./test.log", "a");
echo 'ok' . PHP_EOL;
fclose($handle);

// cat test.log
// ok

xdebug 设置

# 开启 xdebug
php -d xdebug.remote_enable=1 -d xdebug.remote_autostart xxx.php

# 开启 xdebug profile
php -d xdebug.profiler_enable=1 xxx.php

# 通过环境变量设置 xdebug
XDEBUG_CONFIG="idekey=session_name remote_host=localhost profiler_enable=1"

去掉 composer 内存限制

COMPOSER_MEMORY_LIMIT=-1 composer require xxx

php 脚本跑 crontab 的时候,如果有输出日志或者出错信息会打到 mail 里面(前提是开启了 postfix),因为是 crontab 脚本,如果每次执行都会输出日志的话,就很容易将服务器的磁盘占满,所以执行脚本的时候最好 重定向 stdout 然后定期删除 或者 在 crontab 里面这样写

* * * * * php xxx.php > /dev/null 2>&1