1.Json就是一个格式,为了让网站接收数据,它是js里的“字面量对象”, 字面量对象:var obj = {名称:值,名称:function() {} }
是一种数据交换格式
2.数据接口专门提供信息,数据格式是json或xml
3.php如何制作一个json出来?
通过函数:利用json_encode()生成json,利用json_decode()接收json
json_encode()函数只能使用一次在服务器端php文件里
4.利用php生成json信息,就是自己做了个数据接口了,json信息在php中就是字符串,所以要把json信息反编码,接收
5.php格式的命名不能有中文汉字,html格式的命名可以有汉字
6.json_encode()处理后要看括号里的参数是关联数组还是索引数组,要是关联数组则生成json对象信息格式
要是索引数组则生成数组形式
总结:一开始数据在服务器端是数组,经过json_encode处理后变为json格式,这种格式在php中是字符串格式,再经过反编码json_decode处理变为在php中是数组或对象格式存在
7.php处理json信息
json_decode(json信息,boolean); 反编码json信息
对json字符串信息进行反编码,变为当前语言可以识别的信息。
json_decode(json字符串,true)--->array
json_decode(json字符串,[false])--->object
把不发生变化的东西(html标签.,css样式)放在客户端html文件里,数据信息留在服务器端php文件中,然后服务器响应回来时数据信息就只剩数据了,没有样式支持了就是不是html标签格式了,就把数据变成json格式,然后在客户端接收到信息,再与html,css结合组成完美的页面展现给用户
思想:把单独变化的东西拿出来优化
2.4 javascript接收处理json信息
ajax获得接口信息,javascript本身处理json信息
通过eval()把接收的json字符串变成真实的对象信息
3.ajax的每次请求都要从服务器获得三部分信息,对 带宽、服务器资源、用户等待时间 等资源都要占据三份,我们要做优化:把不发生变化的css样式、html标签 放到客户端手动生成,从而减轻服务器端的工作、减轻带宽浪费。
此时服务器端数据可以通过json格式传递回来(之前是html标签格式)
一定要分清楚js中的变量和php中的变量写法区别:
Js:var a=11; a=23;
PHP:$a=22; $a=23;
Ajax总结
1. 创建ajax对象
2. 发起对服务器的请求
3. ajax接收服务器返回信息