Có thể chuyển biến $ _SERVER sang tập lệnh PHP thông qua dòng lệnh không?
Cụ thể là tôi đang cố gắng đặt $ _SERVER ['recipient'] theo cách thủ công để tôi có thể kiểm tra đường ống email mà không cần thiết lập máy chủ thư.
Có thể chuyển biến $ _SERVER sang tập lệnh PHP thông qua dòng lệnh không?
Cụ thể là tôi đang cố gắng đặt $ _SERVER ['recipient'] theo cách thủ công để tôi có thể kiểm tra đường ống email mà không cần thiết lập máy chủ thư.
Làm thế nào về việc thiết lập một trang giả gọi dummy.php với nội dung này:
<?php
$_SERVER['recipient'] = '[email protected]';
?>
On * nix:
$ recipient="[email protected]" php script.php
<?php
print_r($_SERVER);
Test:
$ recipient="[email protected]" php script.php | grep recipient
[recipient] => [email protected]
Hoặc, bạn có thể xuất hoặc setenv (tùy thuộc vào HĐH của bạn), như
$ export recipient="[email protected]"
$ setenv recipient="[email protected]"
Câu trả lời của @sberry là chính xác.
... nhưng vì tôi đã đến trang này tìm cách thiết lập giá trị mặc định cho mảng $_SERVER
, khi chạy PHP từ dòng lệnh, đây là câu trả lời của riêng tôi. Hy vọng nó có thể giúp ai đó.
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);
Cá nhân tôi sử dụng như sau.
Ví dụ: đặt $ _SERVER ['recipient] trong dòng lệnh PHP của tôi.
Với OS X
Nối dòng sau vào tập tin '~/.bash_profile' (tạo ra nó, nếu nó không tồn tại)
export recipient="[email protected]"
Với Ubuntu GNU/Linux
Nối dòng sau vào tập tin '/etc/environment' (tạo ra nó, nếu nó không tồn tại, xem https://help.ubuntu.com/community/EnvironmentVariables)
không phải là một câu hỏi rất rõ ràng nhưng có lẽ bạn muốn: php script.php command_line_arguments_go_here –