PHP Conference Japan 2024

執行階段設定

這些函式的行為會受到 php.ini 中設定的影響。

檔案系統和串流設定選項
名稱 預設值 可變更性 變更紀錄
allow_url_fopen "1" INI_SYSTEM  
allow_url_include "0" INI_SYSTEM 自 PHP 7.4.0 起已棄用。
user_agent NULL INI_ALL  
default_socket_timeout "60" INI_ALL  
來自 "" INI_ALL  
auto_detect_line_endings "0" INI_ALL 自 PHP 8.1.0 起已棄用。
sys_temp_dir "" INI_SYSTEM  

以下是設定指令的簡短說明。

allow_url_fopen 布林值

此選項啟用 URL 感知 fopen 包裝器,允許像存取檔案一樣存取 URL 物件。提供預設包裝器,以便使用 ftp 或 http 協定存取遠端檔案,一些擴充套件,例如 zlib,可能會註冊其他包裝器。

allow_url_include 布林值

此選項允許在以下函式中使用 URL 感知 fopen 包裝器:includeinclude_oncerequirerequire_once

注意事項:

此設定需要開啟 allow_url_fopen。

user_agent 字串

定義 PHP 傳送的使用者代理。

default_socket_timeout 整數

基於 Socket 串流的預設逾時時間(以秒為單位)。指定負值表示無限逾時。

from 字串

在使用 ftp 和 http 包裝器時,分別用於未經驗證的 FTP 連線的電子郵件地址和 HTTP 連線的 From 標頭值。

auto_detect_line_endings 布林值

開啟後,PHP 將檢查 fgets()file() 讀取的資料,以查看其是否使用 Unix、MS-Dos 或 Macintosh 的行尾約定。

這使 PHP 能夠與 Macintosh 系統交互操作,但預設為關閉,因為在偵測第一行的行尾約定時會產生非常小的效能損失,也因為在 Unix 系統下使用回車符作為項目分隔符號的使用者會遇到非向下相容的行為。

sys_temp_dir 字串

新增註釋

使用者貢獻的註釋 1 則註釋

Pistachio
12 年前
我很驚訝這裡的文件沒有提到這一點,但要在執行期間設定這些值,請使用「ini_set()」。例如:

<?php
ini_set
("auto_detect_line_endings", true);

// 現在我可以在包含奇怪 \r 行尾的檔案上呼叫 fgets() 了。
?>
To Top