在运行一个PHP脚本时.该脚本将在脚本中的某个位置调用另一个脚本.这两个脚本需要同时运行,所以我不能在这里使用include或require.脚本将使用终端调用,如下所示:
exec( '/usr/bin/php ../process.php >> logs/' . date( 'Y_m_d' ) . '.log 2>&1 &' );
Run Code Online (Sandbox Code Playgroud)
这里的一个大问题是我想要处理6种不同的东西,但它们都将使用完全相同的代码.唯一的区别是它们将被处理的目录.
现在的问题是:在传递一个或多个变量时是否有一种简单的方法来运行第二个脚本?
我尝试了类似的东西../process?var=something,但这显然不会这样.
您可以将一些变量作为参数传递给脚本.传递的所有参数都在变量中$argv.
请参阅php docs $ argv
然后循环浏览$argv并查看您定义的一些关键字.
exec( '/usr/bin/php ../process.php -f '/path/to/folder' >> logs/' . date( 'Y_m_d' ) . '.log 2>&1 &' );
Run Code Online (Sandbox Code Playgroud)
在$argv随后的变量将举行-f和/path/to/folder,所以只检查-f中环和位置获得值-f+1.