欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  web前端

细说js,php对象数组的差别以及json的使用

程序员文章站 2022-04-17 16:45:36
...

在日常的开发中大家都知道js的对象和数组跟php的对象和数组都差不多,但是还是有不同点的,不了解js,php对象和数组差别在哪的同学可以一起来看看本篇文章,还有json数据的使用哦!废话不多说了,我们一起来看看吧!

JS对象结构:

创建一个对象:
方法一
var aaa = {
   firsetname:"liu",
   lastname:"xuan",
   class:four,
   down:function(){}
};
方法二 通过构造函数创建对象。
var aaaa = new Object();//object()就是js内置的一个构造函数,与new结合就可以创建一个新对象。
添加属性:aaaa.firstname = "liu";
        aaaa.lastname = "xuan";
获取对象操作:点访问发或中括号访问法

JS数组结构:

定义一个数组方法1 :var bbb = ["齐天大圣","猪八戒","沙僧","唐三藏"]
定义一个数组方法2  var ccc = new Array();
                ccc[0] = "孙悟空";
                ccc[1] = "如意金箍棒";

这里要记住js中的数组都是索引数组,数组是一种特殊的对象。

php对象:

php中类的实例就是对象。首先我们需要先定义一个类,然后将类实例化创造一个对象。

class qqq{
var $a;
var $b;
public function c(){}
}
$d = new qqq;
php对象的访问:通过符号"->"。

php数组:

创建数组有两种方式:
方式一
使用赋值方式定义数组:
$arr[]="PHP"//默认下标从0开时。0有值则看1有没有值
$arr[3]="c语言"
$arr["XINGMING"]="孙悟空"
方法二:通过array()函数。
$arr = array("id"=>1,"name"=>"悟空");//注意此时数组的写法。

PHP数组有2种:
索引数组:下标为整形
 关联数组: 下标为字符串
 通过中括号访问数组数据

js操作字符串

通过js中的JSON对象JSON_stringify/JSON_parse操作字符串。
JSON_stringify 将js对像转换成JSON字符串。
JSON_parse  将JSON字符串转换成js对象,这样我就访问对象中的属性和方法。

php操作字符串

json_encode 将php对象编码成json字符串的形式。
json_decode 将json字符串转换成对象或数组,为true转换成数组形式。

重要说明

1、php中,通过var_dump来打印数组或对象的效果,请看下面代码:

<?php 
$json = '{"a":1,"b":2,"c":3,"d":4,"e":5}'; 
var_dump(json_decode($json)); 
var_dump(json_decode($json, true)); 
?> 
效果如下:
object(stdClass)#1 (5) { 
["a"] => int(1) 
["b"] => int(2) 
["c"] => int(3) 
["d"] => int(4) 
["e"] => int(5) 
} 

array(5) { 
["a"] => int(1) 
["b"] => int(2) 
["c"] => int(3) 
["d"] => int(4) 
["e"] => int(5) 
} 
//有人可能会纠结除了显示的数据类型不同外,打印结果好像没有什么差别。其实数据的显示格式与打印成数组还是对象无关,只与var_dump这个函数本身有关,这个函数规定数组和对象的数据就通过这种方式打印。

2、json字符串的格式

JSON的正确格式为:$A = '{"NAME":"LIUXUSJ"}';
如果写成$A = "{"NAME":"LIUXUNA"}"会显示错误。php或者js在识别代码的时候会从左至右依次解读,这样它会首先识别"{"而不是"NAME",所以最外围最好用单引号包裹。

3、单引号和双引号可以相互包裹。不过php中,单引号中的变量不会被解析,双引号中的变量才会被解析。

相关文章:

js 定义对象数组(结合)多维数组方法

JSON数据格式如何转换为PHP数组

以上就是细说js,php对象数组的差别以及json的使用的详细内容,更多请关注其它相关文章!