zoukankan      html  css  js  c++  java
  • JSON运用——PHP中使用json数据格式定义字面量对象的方法

    目前,在PHP中是不支持字面量命名法。

    前端的小伙伴都知道,在JS中用字面量定义一个对象的方法可以如下:

    var o = { 'name' : 'Tom' , 'url' : 'www.baidu.com' };
    alert(o.name);

    但在PHP中这么定义对象:

    $o = { "name" : "Tom", "url" : "www.baidu.com"  };

    则会报错

    Parse error: syntax error, unexpected '{' in D:serverhtdocsxmdata4_product_select.php on line 9

    所以在需要用到JSON时,可以用尽量尝试PHP的数组的形式,而少使用对象的形式,可以更简单且直观(目前本人的观点,或许不够客观,望斧正)。再用json_enconde($arr),进行JSON格式编码,方法如下

    $arr = [
          'name' => 'Tom',
          'age'  => 20      
    ];
    $json = json_encode($arr);

    当需要定义多对象数组的时候可以写成如下方式:

    $stuArray[] = [
    'name'=>'Lucy',
    'age'=>30
    ];
    
    $stuArray[] = [
    'name'=>'Mary',
    'age'=>20
    ];
    
    $stuArray[] = [
    'name'=>'Lily',
    'age'=>32
    ];

    本人在查阅阮一峰老师的博客文章在PHP语言中使用JSON时,看到阮老师所说的“javascript不支持关联数组”(详见下图),自己不是很认同,但未找到资料反驳他,或反驳自己,所以在此贴出截图,希望日后能自己解决,也希望各位能指点一二,不胜感激!

    不过最后说的:json_enconde()只将索引数组(indexed array)转换为数组格式,而将关联数组(associative array)转为对象格式。还是应该牢记此特性!

  • 相关阅读:
    vim 打开了没有权限写入的文件,怎么才能不必重新编辑
    Linux 关闭终端响铃的特性
    Python 的 print 函数
    C 语言标准库中的qsort函数使用
    java知识学习14-面向对象
    java知识学习13-方法
    java知识学习12-数组
    mac格式化重装系统
    java知识学习11- IDEA
    java知识学习10-跳转控制语句(break/continue)、循环嵌套、Random
  • 原文地址:https://www.cnblogs.com/zhilingege/p/6852844.html
Copyright © 2011-2022 走看看