设置argc / argv并包含PHP CLI脚本

时间:2011-01-23 13:50:49

标签: php

如果我有一个用PHP编写的需要各种命令行选项的CLI脚本foo,我可以先从另一个PHP脚本调用foo,首先写入$ argv和$ argc然后执行include('foo')吗? (假设foo以<?php开头,而不是hash-bang指令。)

即使这会“奏效”,为什么这是一个坏主意? (除命名空间冲突外)。

2 个答案:

答案 0 :(得分:2)

没有必要在$argv / $argc中写入任何内容 - 变量将可用于包含,就像它们与主脚本一样。

答案 1 :(得分:0)

如果您不允许这些命令行参数的用户输入,或者对它们非常小心,您可以始终使用systemexec函数来调用foo,显式地使用这些参数并且没有弄乱$ argc和$ argv。

也就是说,只要您实际上不需要明确包含foo ..

我想象你的建议会起作用,只是不要忘记把原来的价值放回去。