PHP為開發者提供了方便的方法將PHP物件轉換為字串。這些方法包括 _toString() 函數和serialize() 函數。 _toString() 函數通常用於將物件轉換為字串表示形式。呼叫時,物件本身定義瞭如何將其轉換為字串。另一方面,serialize() 函數透過傳回物件的位元組流表示形式將物件轉換為字串。
廣告 該類別中的熱門課程 PHP 開發人員 - 專業化 | 8 門課程系列 | 3次模擬測驗開始您的免費軟體開發課程
網頁開發、程式語言、軟體測試及其他
沒有廣泛使用的確切語法來將 PHP 物件轉換為字串,但是還有其他方法可以實現這些轉換;語法存在並透過將它們嵌入到程式碼中來使用,其表示如下:
$var = some_name $var = obj_1; { Call function with $var; Use _toString() method; }
以下是範例。
程式示範了serialize()方法,該方法傳回表示輸出中所示值的字串的位元組流。
代碼:
<?php class Nw_Ob { public $nme = 'Henry_Joe'; public function __toString() { return "person nme is: {$this->nme}\n"; } } $OBJ_1 = new Nw_Ob; echo $OBJ_1; echo serialize($OBJ_1); ?>
輸出:
程式示範了使用物件整個陣列中的值將物件轉換為字串,並且它將傳回整個字串集,如輸出所示。此功能與5及以上版本更加相容。
代碼:
<?php $vl_1 = (object) array('almond' => 2, 'nuts' => 3, 'peanut' => 4); $re_2 = new ReflectionObject($vl_1); echo $re_2->getName() .' {' . implode(', ', array_map( function($p_0) use ($vl_1) { $p_0->setAccessible(true); return $p_0->getName() .': '. $p_0->getValue($vl_1); }, $re_2->getProperties())) .'}';
輸出:
程式示範了在展示時所表示的異常和錯誤,並且物件以輸出中所示的字串表示。
代碼:
<?php class M_Clss { public $nm; public function __construct($nm) { $this->_name_1 = $nm; } public function __toString() { try { return (string) $this->_name_1; } catch (Exception $exception) { return ''; } } } $cls_Obj = new M_Clss('Jhon_ops'); echo $cls_Obj; ?>
輸出:
該程式展示了包含各種水果的陣列的輸入。目標是利用 JSON 編碼函數將陣列轉換為 JSON 編碼的對象,然後將其顯示為輸出。
代碼:
<?php $arr_01 = array('apple' => 2, 'kiwi' => 4, 'mango' => 6, 'banana' => 8, 'orange' => 9); echo json_encode($arr_01); ?>
輸出:
將物件轉換為字串是一個重要的過程,它使程式設計師能夠獲得有關物件的寶貴見解和深入資訊。
以上是PHP 物件到字串的詳細內容。更多資訊請關注PHP中文網其他相關文章!