當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


PHP JsonSerializable jsonSerialize()用法及代碼示例


JsonSerializable::jsonSerialize()函數是PHP中的內置函數,用於將JSON對象序列化為可以使用json_encode()函數本地化的值。

用法:

mixed JsonSerializable::jsonSerialize( void )

參數:該函數不接受任何參數。


返回值:該函數返回由json_encode()函數序列化的數據。

以下示例程序旨在說明PHP中的JsonSerializable::jsonSerialize()函數:

示例1:

<?php  
class vector implements JsonSerializable {  
    public function __construct(array $arr) {  
        $this->array = $arr;  
    }  
  
    public function jsonSerialize() {  
        return $this->array;  
    }  
}  
  
// Declare an array  
$arr = [1, 2, 3, 4, 5];  
  
echo("JSON elements:\n");  
  
// Convert the array element into JSON 
echo json_encode(new vector($arr), JSON_PRETTY_PRINT);  
  
?> 
輸出:
JSON elements:
[
    1,
    2,
    3,
    4,
    5
]

示例2:

<?php  
class vector implements JsonSerializable {  
    public function __construct(array $arr) {  
        $this->array = $arr;  
    }  
  
    public function jsonSerialize() {  
        return $this->array;  
    }  
}  
  
// Declare an array  
$arr = [ 
    "x" => "geeks",  
    "y" => "for", 
    "z" => "geeks"
];  
  
echo("Convert the array element into JSON:\n");  
  
// Convert the array element into JSON 
echo json_encode(new vector($arr), JSON_PRETTY_PRINT);  
  
?> 
輸出:
Convert the array element into JSON:
{
    "x": "geeks",
    "y": "for",
    "z": "geeks"
}

參考: https://www.php.net/manual/en/jsonserializable.jsonserialize.php



相關用法


注:本文由純淨天空篩選整理自jit_t大神的英文原創作品 PHP | JsonSerializable jsonSerialize() Function。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。