php的一些非預定義數組

PHPz
發布: 2023-04-20 13:39:45
原創
355 人瀏覽過

在PHP開發中,預先定義陣列是程式設計師經常使用的資料結構之一。 PHP中的預定義數組在變數名前面使用一個特殊字元來表示,例如:$_GET、$_POST、$_COOKIE都是PHP預定義數組。不過,有時候我們會遇到一些不是PHP預定義數組的數組,對於這些不同尋常的數組,我們該怎麼處理呢?本文將為您介紹一些非預先定義數組。

  1. $GLOBALS
    $GLOBALS是一個全域變數數組,包含了腳本中所有全域變數的參考。這意味著可以在任何地方使用$GLOBALS來存取任意全域變數。例如:
$var1 = 'Hello'; $var2 = 'World'; function myFunc() { echo $GLOBALS['var1'] . ' ' . $GLOBALS['var2']; } myFunc(); // 输出:Hello World
登入後複製
  1. $HTTP_RAW_POST_DATA
    這個陣列包含了原始的POST請求資料。在PHP 5.6版本之前,當使用HTTP協定提交資料時,此陣列可以直接取得到POST請求中提交的資料。不過,從PHP 5.6版本開始,此陣列已經被棄用了。如果需要取得POST請求數據,應該使用$_POST數組。
  2. $http_response_header
    這個陣列包含了HTTP請求的回應頭訊息,一般用來取得HTTP請求的狀態碼。例如:
$fileContent = file_get_contents('http://www.example.com/'); print_r($http_response_header); // 输出: // Array // ( // [0] => HTTP/1.1 200 OK // [1] => Date: Thu, 23 Sep 2021 13:28:50 GMT // [2] => Server: Apache // [3] => X-Powered-By: PHP/7.4.23 // ... // )
登入後複製
  1. $argv 和 $argc
    這兩個陣列用來取得PHP腳本啟動時傳遞給它的命令列參數。其中$argc數組包含了參數個數,$argv數組包含了參數列表。例如,在命令列下執行下列腳本:
php myScript.php arg1 arg2 arg3
登入後複製

腳本中可以透過$argc和$argv來取得參數資訊:

登入後複製

輸出:

参数个数:4 参数列表:Array ( [0] => myScript.php [1] => arg1 [2] => arg2 [3] => arg3 )
登入後複製
  1. $php_errormsg
    這個陣列包含了最近一次觸發錯誤的錯誤訊息。例如:
$fileHandle = fopen('not-exist-file.txt', 'r'); if (!$fileHandle) { echo $php_errormsg; }
登入後複製

輸出:"fopen(not-exist-file.txt): failed to open stream: No such file or directory"

總結
以上就是PHP中的一些非預先定義數組,包括:$GLOBALS、$HTTP_RAW_POST_DATA、$http_response_header、$argv、$argc和$php_errormsg。了解這些陣列的用途可以幫助我們更好地進行PHP編程。

以上是php的一些非預定義數組的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!