小編給大家分享一下php怎么獲取私有屬性的值,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
創(chuàng)新互聯(lián)建站專業(yè)為企業(yè)提供浦北網站建設、浦北做網站、浦北網站設計、浦北網站制作等企業(yè)網站建設、網頁設計與制作、浦北企業(yè)網站模板建站服務,十多年浦北做網站經驗,不只是建網站,更提供有價值的思路和整體網絡服務。
采用laravel的chunkById段落查詢方法,一次查詢2K,然后批量入庫,由于這個表沒啥改動,可以直接查詢后導入
遇到的問題是,查詢后的數(shù)據(jù)屬性是一個數(shù)組,要手動組裝下才能直接入庫,字段有點多,試想能不能直接拿到這個屬性數(shù)據(jù)然后丟到數(shù)組里直接入庫
查詢出的數(shù)據(jù)是這樣()
是私有屬性
直接 (array)$value 后是這樣
那么直接
$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怎么獲取私有屬性的值”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道!