更多调查后,我发现,如果我从php.ini中删除此问题,该问题将消失:
zend_extension="{$path}\php-7.1\ioncube_loader_win_7.1.dll"
换句话说,ioncube有时会炸毁并从命令行执行php进程。
再说一次,无论php文件的内容如何,如果如上所述启用了ioncube loader,则当我像这样运行命令行php时,它就会死掉:
php somefile.php
原始请求
随机地,我的代码的“ shell_exec”部分停止了工作。经过一番调查,我发现仅从命令行运行php会导致随机行为。我将此添加到文本文件myfile.php:
<?php
print rand(10000,999999)."\r\n";
print '-----------------'."\r\n";
die();
然后我进入命令行并输入:
php myfile.php
我第一次键入它时,会显示一个随机数。第二次,什么都没有。然后第三次,它什么也没显示,第四次什么都没有,然后第五次和第六次再次显示。然后7号停止。完全随机。
这可能是什么原因造成的?
更奇怪的是,这个问题同时对我本人和另一个开发人员开始。我们俩都使用AMPPS,但最近没有升级。
有什么想法吗?