Heim > Web-Frontend > js-Tutorial > Hauptteil

Beschreiben Sie detailliert die Unterschiede zwischen js- und php-Objektarrays und die Verwendung von json

韦小宝
Freigeben: 2018-03-12 17:01:24
Original
2870 Leute haben es durchsucht

In der täglichen Entwicklung weiß jeder, dass JS-Objekte und -Arrays PHP-Objekten und -Arrays ähneln, aber es gibt dennoch einige Unterschiede. Schüler, die die Unterschiede zwischen JS- und PHP-Objekten und -Arrays nicht verstehen, können einen Blick darauf werfen. Dieser Artikel behandelt auch die Verwendung von JSON-Daten! Werfen wir ohne weitere Umschweife einen Blick darauf!

JS-Objektstruktur:

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

JS-Array-Struktur:

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

Denken Sie hier daran, dass Arrays in js alle Indexarrays sind und Arrays ein spezielles Objekt sind.

PHP-Objekte:

Instanzen von Klassen in PHP sind Objekte. Zuerst müssen wir eine Klasse definieren und dann die Klasse instanziieren, um ein Objekt zu erstellen.

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

php-Array:

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

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

js-Operationszeichenfolge

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

php-Operationszeichenfolge

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

Wichtige Hinweise

1. Informationen zum Druck von Arrays oder Objekten über var_dump finden Sie im folgenden Code:

<?php 
$json = &#39;{"a":1,"b":2,"c":3,"d":4,"e":5}&#39;; 
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这个函数本身有关,这个函数规定数组和对象的数据就通过这种方式打印。
Nach dem Login kopieren

2 String-Format

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

3. Einfache und doppelte Anführungszeichen können sich gegenseitig umschließen. In PHP werden jedoch Variablen in einfachen Anführungszeichen nicht analysiert, sondern nur Variablen in doppelten Anführungszeichen.

Verwandte Artikel:

JS-Definition der mehrdimensionalen Array-Methode des Objektarrays (Kombination)

So konvertieren Sie das JSON-Datenformat in ein PHP-Array


Das obige ist der detaillierte Inhalt vonBeschreiben Sie detailliert die Unterschiede zwischen js- und php-Objektarrays und die Verwendung von json. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!