轉換方法:1、在要轉換的數組變量之前加上用括號括起來的目標類型“(object)”,例“(Object)$arr”;2、先用json_encode()將數組轉換成JSON數據,然后用json_decode()將JSON數據轉換成對象即可。
本教程操作環境:windows7系統、PHP7.1版,DELL G3電腦
php 數組轉換成對象的方法
方法一:強制類型轉換—-在要轉換的變量之前加上用括號括起來的目標類型
允許轉換的PHP數據類型有:
-
(int)、(integer):轉換成整形
-
(float)、(double)、(real):轉換成浮點型
-
(string):轉換成字符串
-
(bool)、(boolean):轉換成布爾類型
-
(array):轉換成數組
-
(object):轉換成對象
示例:將數組轉換成對象類型
<?php $arr=['a'=>10,'b'=>100,'c'=>'Hello']; $obj=(Object)$arr; var_dump($arr); var_dump($obj); ?>
輸出:
方法2:使用json_encode()和json_decode()函數
<?php header('content-type:text/html;charset=utf-8'); $arr=['a'=>10,'b'=>100,'c'=>'Hello']; $arr0 = json_encode($arr); $arr1 = json_decode($arr0,true); $arr2 = json_decode($arr0); var_dump($arr); var_dump($arr0); var_dump($arr1); var_dump($arr2); ?>
輸出:
【推薦學習:《PHP視頻教程》】
說明:
函數 | 描述 |
---|---|
json_encode | 對變量進行 JSON 編碼 |
json_decode | 對 JSON 格式的字符串進行解碼,轉換為 PHP 變量 |
json_last_error | 返回最后發生的錯誤 |
PHP json_encode() 用于對變量進行 JSON 編碼,該函數如果執行成功返回 JSON 數據,否則返回 FALSE 。
語法
string json_encode ( $value [, $options = 0 ] )
參數
-
value: 要編碼的值。該函數只對 UTF-8 編碼的數據有效。
-
options:由以下常量組成的二進制掩碼:JSON_HEX_QUOT, JSON_HEX_TAG, JSON_HEX_AMP, JSON_HEX_APOS, JSON_NUMERIC_CHECK,JSON_PRETTY_PRINT, JSON_UNESCAPED_SLASHES, JSON_FORCE_OBJECT
PHP json_decode() 函數用于對 JSON 格式的字符串進行解碼,并轉換為 PHP 變量。
語法
mixed json_decode ($json_string [,$assoc = false [, $depth = 512 [, $options = 0 ]]])
參數
-
json_string: 待解碼的 JSON 字符串,必須是 UTF-8 編碼數據
-
assoc: 當該參數為 TRUE 時,將返回數組,FALSE 時返回對象。
-
depth: 整數類型的參數,它指定遞歸深度
-
options: 二進制掩碼,目前只支持 JSON_BIGINT_AS_STRING 。