我创建了一个小脚本,用于从某些链接“清理”站点地图文件。我认为我以前使用它没有任何问题,但由于一个奇怪的错误现在无法使用它 - 根本没有读取命令行参数。
我可能正在寻找错误的地方,但我用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 $ / web / cgi-bin / php5 test.php 1 2 3 45
内容类型:text / html
0
好的......写这篇文章的时候,我想我可能已经有了一些东西:这是Godaddy共享主机上使用的php5客户端。也许它以某种方式设置不通过命令行使用?或者,如果使用它,它不接受命令行参数。
答案 0 :(得分:3)
Ohhhhhhhhhhh ......好吧,我是一个完全的菜鸟。
我刚刚发现这个问题确实与使用不正确的php二进制文件有关...也就是说,'{right'}可以在/usr/local/php5/bin/php
中找到。
我真的很抱歉这个错误。