zoukankan      html  css  js  c++  java
  • json变量声明

    这篇文章主要介绍了PHP中使用json数据格式定义字面量对象的方法,这是一种变通方法,使用json还可以在类中生成数组哦,需要的朋友可以参考下

    PHPer都知道PHP是不支持字面量了,至少目前版本都不支持。比如,在JS中可以这样定义object

    1 var o = { 'name' : 'qttc' , 'url' : 'www.jb51.net' };
    2 alert(o.name);

    Python中定义字典,也可以这样定义:

    1 o = { 'name' : 'qttc' , 'url' : 'www.jb51.net' }
    2 print o['name']

    但在PHP中这么定义object:

    1 $a = { "name" : "qttc", "url" : "www.jb51.net"  };

    会报错:

    1 [root@lee www]# php a.php 
    2 PHP Parse error:  syntax error, unexpected '{' in /data0/htdocs/www/a.php on line 4

    我们可以借用json格式,用引号把包下然后再json_decoude就好。声明jason变量的方法!

    1 $a = '{ "name" : "qttc", "url" : "www.jb51.net"  }';
    2 $a = json_decode($a);
    3 print_r($a);

    执行结果:

    1 [root@lee www]# php a.php 
    2 stdClass Object
    3 (
    4     [name] => qttc
    5     [url] => www.jb51.net
    6 )

    由于PHP不支持字面量or匿名函数,所以使用以上定义的方法定义object时不能添加function到object里,还可以这样添加数组元素:

    1 $a = '{ "name" : "qttc", "url" : "www.jb51.net" , "arr":["zhangsan","lisi"] }';
    2 $a = json_decode($a);
    3 print_r($a);

    执行结果:

     1 [root@lee www]# php a.php 
     2 stdClass Object
     3 (
     4     [name] => qttc
     5     [url] => www.jb51.net
     6     [arr] => Array
     7         (
     8             [0] => zhangsan
     9             [1] => lisi
    10         )
    11  
    12 )
  • 相关阅读:
    【CQOI2015】网络吞吐量
    【SDOI2010】所驼门王的宝藏
    【NOIP2013】华容道
    【SNOI2019】通信
    【IOI2016】railroad
    【AtCoder3611】Tree MST
    【AtCoder2134】ZigZag MST
    【CF891C】Envy
    【BZOJ4883】棋盘上的守卫
    【CF888G】Xor-MST
  • 原文地址:https://www.cnblogs.com/lyf-blog/p/5729065.html
Copyright © 2011-2022 走看看