admin 发表于 2023-2-16 18:54:42

PHP JSON

<div id="article_content" class="article_content clearfix">
      <link rel="stylesheet" href="https://csdnimg.cn/release/blogv2/dist/mdeditor/css/editerView/kdoc_html_views-1a98987dfd.css">
      <link rel="stylesheet" href="https://csdnimg.cn/release/blogv2/dist/mdeditor/css/editerView/ck_htmledit_views-6e43165c0a.css">
                <div id="content_views" class="htmledit_views">
                  <h2>环境配置</h2>
<p>在 php5.2.0 及以上版本已经内置 JSON 扩展。</p>
<hr>
<h2>JSON 函数</h2>
<table><tbody><tr><th>函数</th><th>描述</th></tr><tr><td>json_encode</td><td>对变量进行 JSON 编码</td></tr><tr><td>json_decode</td><td>对 JSON 格式的字符串进行解码&#xff0c;转换为 PHP 变量</td></tr><tr><td>json_last_error</td><td>返回最后发生的错误</td></tr></tbody></table>
<hr>
<h2>json_encode</h2>
<p>PHP json_encode() 用于对变量进行 JSON 编码&#xff0c;该函数如果执行成功返回 JSON 数据&#xff0c;否则返回 FALSE 。</p>
<h3>语法</h3>
<pre>string json_encode ( $value [, $options &#61; 0 ] )</pre>
<h3>参数</h3>
<ul><li><strong>value</strong>: 要编码的值。该函数只对 UTF-8 编码的数据有效。</li><li> <p><strong>options</strong>:由以下常量组成的二进制掩码 JSON_HEX_QUOT, JSON_HEX_TAG, JSON_HEX_AMP, JSON_HEX_APOS, JSON_NUMERIC_CHECK, JSON_PRETTY_PRINT, JSON_UNESCAPED_SLASHES, JSON_FORCE_OBJECT, JSON_PRESERVE_ZERO_FRACTION, JSON_UNESCAPED_UNICODE, JSON_PARTIAL_OUTPUT_ON_ERROR。</p> 要注意的是 JSON_UNESCAPED_UNICODE 选项&#xff0c;如果我们不希望中文被编码&#xff0c;可以添加该选项。</li></ul>
<h3>实例</h3>
<p>以下实例演示了如何将 PHP 数组转换为 JSON 格式数据&#xff1a;</p>
<pre><?php
   $arr &#61; array('a' &#61;> 1, 'b' &#61;> 2, 'c' &#61;> 3, 'd' &#61;> 4, 'e' &#61;> 5);
   echo json_encode($arr);
?></pre>
<p>以上代码执行结果为&#xff1a;</p>
<pre>{&#34;a&#34;:1,&#34;b&#34;:2,&#34;c&#34;:3,&#34;d&#34;:4,&#34;e&#34;:5}</pre>
<p>以下实例演示了如何将 PHP 对象转换为 JSON 格式数据&#xff1a;</p>
<h2>实例</h2>
<p><?php<br>    class Emp {<br>        public $name &#61; &#34;&#34;;<br>        public $hobbies  &#61; &#34;&#34;;<br>        public $birthdate &#61; &#34;&#34;;<br>    }<br>    $e &#61; new Emp();<br>    $e->name &#61; &#34;sachin&#34;;<br>    $e->hobbies  &#61; &#34;sports&#34;;<br>    $e->birthdate &#61; date('m/d/Y h:i:s a', &#34;8/5/1974 12:20:03 p&#34;);<br>    $e->birthdate &#61; date('m/d/Y h:i:s a', strtotime(&#34;8/5/1974 12:20:03&#34;));<br><br>    echo json_encode($e);<br> ?></p>
<p>以上代码执行结果为&#xff1a;</p>
<pre>{&#34;name&#34;:&#34;sachin&#34;,&#34;hobbies&#34;:&#34;sports&#34;,&#34;birthdate&#34;:&#34;08\/05\/1974 12:20:03 pm&#34;}</pre>
<h2>使用 JSON_UNESCAPED_UNICODE 选项</h2>
<p><?php<br>    $arr &#61; array('runoob' &#61;> '菜鸟教程', 'taobao' &#61;> '淘宝网');<br>    echo json_encode($arr); // 编码中文<br>    echo PHP_EOL;  // 换行符<br>    echo json_encode($arr, JSON_UNESCAPED_UNICODE);  // 不编码中文<br> ?></p>
<p>以上代码执行结果为&#xff1a;</p>
<pre>{&#34;runoob&#34;:&#34;\u83dc\u9e1f\u6559\u7a0b&#34;,&#34;taobao&#34;:&#34;\u6dd8\u5b9d\u7f51&#34;}
{&#34;runoob&#34;:&#34;菜鸟教程&#34;,&#34;taobao&#34;:&#34;淘宝网&#34;}</pre>
<hr>
<h2>json_decode</h2>
<p>PHP json_decode() 函数用于对 JSON 格式的字符串进行解码&#xff0c;并转换为 PHP 变量。</p>
<h3>语法</h3>
<pre>mixed json_decode ($json_string [,$assoc &#61; false [, $depth &#61; 512 [, $options &#61; 0 ]]])</pre>
<h3>参数</h3>
<ul><li> <p><strong>json_string</strong>: 待解码的 JSON 字符串&#xff0c;必须是 UTF-8 编码数据</p> </li><li> <p><strong>assoc</strong>: 当该参数为 TRUE 时&#xff0c;将返回数组&#xff0c;FALSE 时返回对象。</p> </li><li> <p><strong>depth</strong>: 整数类型的参数&#xff0c;它指定递归深度</p> </li><li> <p><strong>options</strong>: 二进制掩码&#xff0c;目前只支持 JSON_BIGINT_AS_STRING 。</p> </li></ul>
<h3>实例</h3>
<p>以下实例演示了如何解码 JSON 数据&#xff1a;</p>
<h2>实例</h2>
<p><?php<br>    $json &#61; '{&#34;a&#34;:1,&#34;b&#34;:2,&#34;c&#34;:3,&#34;d&#34;:4,&#34;e&#34;:5}';<br><br>    var_dump(json_decode($json));<br>    var_dump(json_decode($json, true));<br> ?></p>
<p>以上代码执行结果为&#xff1a;</p>
<pre>object(stdClass)#1 (5) {
    [&#34;a&#34;] &#61;> int(1)
    [&#34;b&#34;] &#61;> int(2)
    [&#34;c&#34;] &#61;> int(3)
    [&#34;d&#34;] &#61;> int(4)
    [&#34;e&#34;] &#61;> int(5)
}

array(5) {
    [&#34;a&#34;] &#61;> int(1)
    [&#34;b&#34;] &#61;> int(2)
    [&#34;c&#34;] &#61;> int(3)
    [&#34;d&#34;] &#61;> int(4)
    [&#34;e&#34;] &#61;> int(5)
}</pre>
                </div>
      </div>
      <div id="treeSkill"></div>
页: [1]
查看完整版本: PHP JSON