首頁 >後端開發 >php教程 >php如何取得私有屬性的值

php如何取得私有屬性的值

藏色散人
藏色散人轉載
2021-02-11 09:12:192790瀏覽

#採用laravel的chunkById段落查詢方法,一次查詢2K,然後批量入庫,由於這個表沒啥改動,可以直接查詢後導入

遇到的問題是,查詢後的資料屬性是一個數組,要手動組裝下才能直接入庫,字段有點多,試想能不能直接拿到這個屬性資料然後丟到陣列裡直接入庫

查詢出的資料是這樣(推薦:《php影片教學》)
php如何取得私有屬性的值

#是私有屬性

直接(array)$value 之後是這樣
php如何取得私有屬性的值

那麼直接
$arrTemp['x00* x00attributes']應該可以,試了下確實行

封裝下:

public function getProtectedValue($obj, $name) {
    $array = (array)$obj;
    $prefix = chr(0).'*'.chr(0);
    return $array[$prefix.$name];
}

截圖中x00對應的ASCII碼為0,用chr將0的ASCII碼轉換為字串,即chr(0)對應ASCII碼為x00,然後拼接下*就OK

調整後的程式碼為

$arrTemp = $this->getProtectedValue($value, 'attributes');

以上是php如何取得私有屬性的值的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:segmentfault.com。如有侵權,請聯絡admin@php.cn刪除