我创建了一个小脚本,用于从某些链接'清理'站点地图文件。我想我以前没有遇到任何问题,但是现在由于一个奇怪的错误而无法使用它 - 根本不读取命令行参数。PHP不读命令行参数
我可能看错了地方,但我GOOGLE了,我得到的是我已经实施的用法。
请检查下面的代码片段:
if(count($argv) != 4) {
echo "\n\nUSAGE: php cleanSitemap.php <input file> <output file> <bad str>\n"
."This script parses <input file>, skipping all the sitemap XML elements containing <bad str>,\n"
."writting only 'good' XML elements into sitemap.\n"
."Sample: php cleanSitemap.php sitemap.xml sitemap_clean.xml protect-x\n"
."\n";
echo "You entered " . count($argv) . " parameters.\n";
exit();
}
你怎么想,问题出在哪里???
编辑: 为了简化问题,我创建test.php的与以下内容:
<?php
echo count($argv) ."\n";
print_r($argv);
echo "\n";
?>
-bash-3.2 $ /网络/的cgi-bin/PHP5 test.php的1 2 3 45
内容类型:text/html的
好。W hile写这篇文章,我想我可能会想到:这是在Godaddy共享主机上使用的php5客户端。也许它设置为不通过命令行使用?或者,如果使用,它不接受命令行参数。
你能告诉我们你进入命令行的内容吗? – 2011-04-16 13:57:50
你可以发布'print_r($ argv);'的结果吗? – PeeHaa 2011-04-16 13:58:01
你如何称此程序? var_dump($ argv)告诉你什么? – halfdan 2011-04-16 13:58:18