是否可以通過命令行將$ _SERVER變量傳遞給PHP腳本?
具體而言,我試圖手動設置$ _SERVER ['recipient'],這樣我就可以在不設置郵件服務器的情況下測試電子郵件管道。
是否可以通過命令行將$ _SERVER變量傳遞給PHP腳本?
具體而言,我試圖手動設置$ _SERVER ['recipient'],這樣我就可以在不設置郵件服務器的情況下測試電子郵件管道。
如何建立一個虛擬的頁面調用dummy.php與此內容:
<?php
$_SERVER['recipient'] = '[email protected]';
?>
在* nix:
$ recipient="[email protected]" php script.php
<?php
print_r($_SERVER);
測試:或者
$ recipient="[email protected]" php script.php | grep recipient
[recipient] => [email protected]
,你可以導出它或setenv(取決於您的操作系統),如
$ export recipient="[email protected]"
$ setenv recipient="[email protected]"
@sberry的回答是正確的。
...但因爲我來到這個頁面找設定默認值爲$_SERVER
陣列,在命令行運行PHP的時候,這是我自己的答案。希望它可以幫助某人。
empty($_SERVER['HTTP_HOST']) && $_SERVER['HTTP_HOST'] = 'localhost';
empty($_SERVER['REQUEST_URI']) && $_SERVER['REQUEST_URI'] = '/';
empty($_SERVER['DOCUMENT_ROOT']) && $_SERVER['DOCUMENT_ROOT'] = __DIR__;
print_r($_SERVER);
我個人使用以下內容。
例如:在我的PHP命令行中設置$ _SERVER ['recipient]。
隨着OS X
說明附加以下行到文件 '〜/ .bash_profile中'(創建它,如果它不存在)
export recipient="[email protected]"
與Ubuntu的GNU/Linux
附加以下行到文件 '的/ etc /環境'(創建它,如果它不存在,請參閱https://help.ubuntu.com/community/EnvironmentVariables)
不是一個非常明確的問題,但也許你想:php script.php command_line_arguments_go_here – 2012-05-24 04:48:21