serialize函數有何用?和 JSON有什麼差別
官方解釋:
<code>serialize</code>
<code>(PHP3 >= 3.0.5 , PHP4)</code>
<code>serialize --- 産生一個可儲存的值的表示</code>
<code>文法 : string serialize (mixed value)</code>
<code>說明 : </code>
<code>serialize( )傳回一個包含由value所表示的byte-stream字元串,它能儲存在任何地方。</code>
<code>這可用來儲存或傳遞PHP的值,而不失去它們的型态和結構。</code>
<code>使用unserialize( )能使serialized字元串再次成為原來PHP的值。serialize( )能處理的型态有integer、double、string、array(多面的)、object(物件的屬性将會serialized,但方法則會lose)</code>
注意:
serialize() 可處理除了 resource 之外的任何類型。
使用示範:
<code><?php</code>
<code>$a</code><code>=</code><code>array</code><code>(</code><code>'a'</code><code>,</code><code>'b'</code><code>,</code><code>'c中國'</code><code>);</code>
<code>$a</code><code>=serialize(</code><code>$a</code><code>);</code>
<code>echo</code> <code>$a</code><code>.</code><code>'<br />'</code><code>;</code>
<code>$b</code><code>=unserialize(</code><code>$a</code><code>);</code>
<code>print_r(</code><code>$b</code><code>);</code>
<a href="http://s3.51cto.com/wyfs02/M01/42/2A/wKioL1PW87ujqDbBAAB5v4RCKco101.jpg" target="_blank"></a>
個人了解(通俗的講),就是用來存各種格式的東西,友善傳遞。
和json有什麼差別呢?
JSON是一種輕量級的資料交換格式。易于人閱讀和編寫。同時也易于機器解析和生成。JSON是在AJAX中代替XML交換資料的更佳方案。
<code>$arr</code> <code>= </code><code>array</code>
<code> </code><code>(</code>
<code> </code><code>'Name'</code><code>=></code><code>'Peter'</code><code>,</code>
<code> </code><code>'Age'</code><code>=>20</code>
<code> </code><code>);</code>
<code>$jsonencode</code> <code>= json_encode(</code><code>$arr</code><code>);</code>
<code>echo</code> <code>$jsonencode</code><code>;</code>
<code>{</code><code>"Name"</code><code>:</code><code>"Peter"</code><code>,</code><code>"Age"</code><code>:20}</code>
參考學習位址:
<a href="http://www.cnblogs.com/gnielee/archive/2009/08/02/1536906.html" target="_blank">PHP serialize & JSON 解析</a>
<a href="http://www.phplover.cn/post/php-serialize-unserialize.html" target="_blank">php中serialize和unserialize用法</a>
本文轉自許琴 51CTO部落格,原文連結:http://blog.51cto.com/xuqin/1531872,如需轉載請自行聯系原作者