php使用parse_str實現查詢字符串解析到變量中的方法

  • 2020 年 1 月 19 日
  • 筆記

在利用動態腳本PHP做網站的時候,少不了要把一串字符串解析到變量中,比如一些用GET方式提交參數的網址URL,或一些帶有參數"&"了字符串等等。當然PHP也給我們提供了一個強大的函數,可以讓我用一行代碼的形式完成這麼複雜的工作。

PHP中的parse_str()函數

parse_str() 函數把查詢字符串解析到變量中。

語法

parse_str(string,array)

解釋

string:必需。規定要解析的字符串。

array:可選。規定存儲變量的數組的名稱。該參數指示變量將被存儲到數組中。

注意

注釋:如果未設置 array 參數,則由該函數設置的變量將覆蓋已存在的同名變量。

注釋:php.ini 文件中的 magic_quotes_gpc 設置影響該函數的輸出。如果已啟用,那麼在 parse_str() 解析之前,變量會被 addslashes() 轉換。

舉例說明

利用用parse_str()函數,把一串字符串解析到變量中去

代碼

parse_str('name=Bill&age=60');  echo $name."<br>";  echo $age;

代碼運行結果

Bill

60

把parse_str()函數解析的變量,存放到數組中去

代碼

parse_str('name=Bill&age=60',$myarray);  print_r($myarray);

代碼運行結果

Array ( [name] => Bill [age] => 60 )

利用parse_str()解析一段利用GET方式提交的URL地址

代碼

$url = 'http://heibai.org/?name=Bill&age=60';  $valer = str_replace('http://heibai.org/?','',$url);  parse_str($valer);  echo $name."<br>";  echo $age;

代碼運行結果

Bill

60

說明:此示例只為說明情況,實現項目中,不得使用此示例。