轉數組的方式:1、在指定變數前加上用括號括起來的目標類型“(array)”,語法“(array)變數”;2、用settype()將變數設為陣列類型,語法「settype(變數,"array")」;3、用str_split()將字串轉為數組,語法「str_split(字串,元素長度)」;4、用explode()將字串轉化為數組,語法“explode(分割字元,字串)”。
本教學操作環境:windows7系統、PHP8.1版、DELL G3電腦
php轉數組的幾種方式
方法1、在變數之前加上用括號括起來的目標類型「(array)」
(array):轉換成陣列型別;
<?php header('content-type:text/html;charset=utf-8'); $str = 'hello'; var_dump($str); $arr=(array)$str; var_dump($arr); ?>
#方法2:使用settype()函數
settype($var,$type) 函數用於將變數$var設定為指定類型$type。
只需將$type設定為「"array"
」即可變數$var設定為陣列類型。
<?php header('content-type:text/html;charset=utf-8'); $str = 'hello'; var_dump($str); $arr=settype($str,"array"); var_dump($arr); var_dump($str); ?>
說明:settype()函數會改變原變量,設定成功時傳回 TRUE, 失敗時傳回 FALSE。
方法3、使用str_split()函數--將字串轉換為陣列
#str_split() 函數把字串分割到陣列中,即將字串轉為字元數組。
str_split(string,length)
參數說明如下:
string 必需。規定要分割的字串。
length 可選。規定每個數組元素的長度。預設是 1。
範例:
<?php header('content-type:text/html;charset=utf-8'); $str = 'hello'; var_dump($str); $arr1=str_split($str); var_dump($arr1); $arr2=str_split($str,2); var_dump($arr2); ?>
#方法4、使用explode()函數--將字串轉化為數組
explode() 函數可以基於字串分割符拆分字串,即它將一個字串根據分隔符號拆分為若干個子串,然後將這些子字串組合成數組並返回。
explode($delimiter, $string [, $limit])
參數說明如下:
只需將$delimiter設定為' '
即可。
範例:
<?php header('content-type:text/html;charset=utf-8'); $str = 'hypertext language programming'; var_dump($str); $arr=explode(" ",$str); var_dump($arr); ?>
#方法5、使用preg_split()函數--將字串轉換為陣列
preg_split() 函式透過一個正規表示式來分割字串。
preg_split ( string $pattern , string $subject [, int $limit = -1 [, int $flags = 0 ]] )
參數說明如下:
注意:這將會改變傳回陣列中的每一個元素,使每個元素成為由第0 個元素為分隔後的子字串、第1 個元素為該子字串在subject 中的偏移量所組成的陣列。
傳回值:傳回一個使用 $pattern 分割 subject 字串後得到的子字串組成的陣列。
只需將$pattern設定為/ /
即可。
範例:
<?php header('content-type:text/html;charset=utf-8'); $str = '1 2 3 4,5 6-7 8=9'; var_dump($str); $arr=preg_split('/ /', $str, -1, PREG_SPLIT_OFFSET_CAPTURE); var_dump($arr); ?>
方法6:使用get_object_vars()函数--将对象转化为数组
get_object_vars()返回由对象属性组成的关联数组。
语法:
get_object_vars ($obj)
返回由 obj 指定的对象中定义的属性组成的关联数组。
示例:
<?php class gfg { private $geeks = 0.02; public $for = 1; public $Geeks = "php"; private $GEEKS; static $e; public function example() { var_dump(get_object_vars($this)); } } $example = new gfg; var_dump(get_object_vars($example)); $example->example(); ?>
方法7:使用json_encode()和json_decode()函数--将对象转化为数组
使用json_encode函数将对象转换为json数据,再使用json_decode函数将json数据转换为数组。
<?php class gfg { public $geeks = 0.02; public $for = 1; public $Geeks = "php"; public $GEEKS; public $e; } $example = new gfg; var_dump(json_decode(json_encode($example),TRUE)); ?>
推荐学习:《PHP视频教程》
以上是php轉數組有哪幾種方式的詳細內容。更多資訊請關注PHP中文網其他相關文章!