PHP Conference Japan 2024

apache_setenv

(PHP 4 >= 4.2.0, PHP 5, PHP 7, PHP 8)

apache_setenv設定 Apache subprocess_env 變數

說明

apache_setenv(字串 $variable, 字串 $value, 布林值 $walk_to_top = false): 布林值

apache_setenv() 設定由 variable 指定的 Apache 環境變數值。

注意事項:

設定 Apache 環境變數時,對應的 $_SERVER 變數不會變更。

參數

variable

正在設定的環境變數。

value

新的 variable 值。

walk_to_top

是否設定所有 Apache 層級都可用的頂層變數。

回傳值

成功時返回 true,失敗時返回 false

範例

範例 #1 使用 apache_setenv() 設定 Apache 環境變數

<?php
apache_setenv
("EXAMPLE_VAR", "Example Value");
?>

備註

注意事項:

apache_setenv() 可以與 apache_getenv() 搭配使用,跨不同頁面或設定要傳遞給已包含在 PHP 腳本中的伺服器端包含 (.shtml) 的變數。

參見

新增註解

使用者貢獻的註解 4 則註解

RLG
18 年前
如果您使用 mod_gzip 或 mod_deflate 來壓縮 HTML 輸出,您將無法將部分檔案發送到瀏覽器....

若需要在 PHP 中停用 mod_deflate,您可以使用以下方式告知 Apache

apache_setenv('no-gzip', '1');
phpnotes at kipu dot co dot uk
21 年前
如果您設定一個變數,無論是新的還是現有的,對應的 $_SERVER 變數都不會改變,您也必須更改它。
sixxgate at yahoo dot com
21 年前
當您想要設定變數以傳遞給包含在 PHP 腳本中的伺服器端包含 (.shtml) 時,請使用此方法。
guilleva at gmail dot com
19 年前
當您需要在使用 "virtual" 函數包含的頁面中設定 QUERY_STRING 變數時,請執行以下操作

virtual ("some_page.shtml?$QUERY_STRING");

apache_setenv 在這種情況下不起作用。
To Top