从Linux命令行调用带有GET变量的PHP页面


Calling a PHP page with GET variables from the Linux command line

我想使用wkhtmltopdf将网页转换为PDF文件。我有一个静态模板测试,这个语法非常好用:

wkhtmltopdf my.html my.pdf

问题是实际页面是一个动态PHP页面,其中的表依赖于三个HTMLGET变量。

例如:

http://mypage.php?clientid=SJC&datestart=201201&dateend=201202

我不能直接这样做:

wkhtmltopdf mypage.php?clientid=SJC&datestart=201201&dateend=201202 my.pdf

有人建议我需要首先从带有变量的命令行调用PHP,以获得该组变量的HTML源代码,并使用wkhtmltopdf进行转换。

我该怎么做?使用上述URL作为示例的过程是什么?

最干净的方法是使用$_SERVER['argv']而不是GET变量。

但是,如果必须使用GET变量,可以在自定义脚本中设置它们:

$_REQUEST['var1'] = $_SERVER['argv'][0];

然后CCD_ 4 PHP脚本本身。

另一种方式是设置环境变量QUERY_STRINGREQUEST_METHOD:

export REQUEST_METHOD=GET
exprt QUERY_STRING='var1=blub&var2=blah'

在Linux中,您可以使用wget命令从URL获取结果HTML文件:

wget "http://localhost/mypage.php?clientid=SJC&datestart=201201&dateend=201202"

wget -O myfile.html "http://localhost/mypage.php?clientid=SJC&datestart=201201&dateend=201202"

将结果输出到特定文件,例如myfile.html

注:

wget wget -O myfile.html "http://localhost/mypage.php?clientid=SJC&datestart=201201&dateend=201202"

双引号似乎解决了"与"answers"编码"的问题。