[英]PHP Command Line argv[1] always null
我的PHP脚本是这样的:
<?php
if ($argv[1] == 'RUN') {
//a URL you want to retrieve
$my_url = 'thisURL.com';
$html = file_get_contents($my_url);
$dom = new DOMDocument();
$dom->loadHTML($html);
$xpath = new DOMXPath($dom);
...
$fp = fopen('standings.json', 'w');
fwrite($fp, json_encode($teamInfoArrays));
fclose($fp);
} else {
$data = file_get_contents ('standings.json');
echo $data;
}
?>
但是当我使用以下命令从命令行运行php脚本时
php /home/usrname/public_html/standings.php RUN
不满足“ if”功能,而是执行“ else”部分。 为什么argv [1]为空?
根据手册, argv是字符串数组。 您正在与RUN
进行比较,但这应该为'RUN'
以指示Run也是一个字符串。 否则它将尝试查找未定义的变量RUN
,因此将不等于argv[1]
你应该写你的if条件
if ($argv[1] == "RUN") {...
因为“ RUN”字是从命令行获取的字符串。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.