AJAX 、序列化函数、JSON的介绍

版权声明:希望不要抄袭,可以借鉴。 https://blog.csdn.net/weixin_37616043/article/details/81078368

                                   AJAX 、序列化函数、JSON的介绍

一、AJAX 是Asynchronous JavaScript And XML 的首字母缩写(异步js 及XML) ajax是基于http请求类型:GET/POST,类似form表单提交,使用javascript在浏览器与服务器之间来发送和接受数据,实现页面无刷新(局部刷新)提交数据的一种技术。优点:节省带宽、节约时间、友好体验

书写格式:<script> 
            $.ajax({                           

                       url: "./2.php",           //请求的处理页面。类似form的action           
                       type: “get",               //请求的提交类型。类似form的method。可以是get        
                       data: {‘username’:$(‘#pwd’).val()  ,‘tel2’:$(‘#tel’).val()},           //请求提交时的参数。   
                       async: true,              //请求提交时,异步(默认)或同步:true/false:异步/同步   
                       dataType: “text”,        //返回的数据类型 //json/text/html/xml等  
                       success: function(data){                // 返回的处理函数和返回数据data(2.php  echo输出的数据)      
                       alert(data);     //data的内容,可以是字符串,数组或对象   } }); 
                   </script> 
                    “2.php”的代码为:<?php echo 1; ?>

二、什么是序列化函数  :
                                       为了将任意类型变量(除了资源类型的),存储或者在网络中传输,需要将这些变量,
                                       转换成字符串。能将任意类型变量转换成字符串的函数,叫序列化函数,或者叫串
                                       行化函数。 PHP的序列化函数

       函数serialize(任意变量);//序列化成字符串  
                  unserialize(序列化后的字符串);//还原成源数据和类型

       例如:<?php   
                           $array = array('key'=>'baidu','url'=>'www.baidu.com');
                           $a = serialize($array);  
                           echo $a;  
                           $a = unserialize($a);  
                           print_r($a);  
                    ?>

三、 json:是一种轻量级的数据交换格式,通常用于不同语言之间的数据传递,
         格式:1、[1,2];  2、{“a”:1,“b”:2};  3、[{"a":1,"b":2},{"a":1,"b":2}]
         说明:方括号保存数组,花括号保存对象,数据在键值中,以逗号分隔;
          json_encode(任意变量);//对变量进行JSON编码,只能接受 UTF-8 的变量
          json_decode(json后的字符串,true);//JSON 格式的字符串转换为PHP变量 
          第2个参数,true/false,true:将原键名非数字,转换为关联数组;
          默认false把源键名为非数字的数组转换为对象类型;

例如:<?php    
              $a=array(1,2);   
              $b=array("a"=>3,4);  
              $a=json_encode($a);   
              $b=json_encode($b);   
              $a=json_decode($a);   
              $c=json_decode($b,true);   
              $b=json_decode($b);//输出$a,$b,$c,看效果 
 ?>

四、总结
1、serialize/unserialize是PHP自有函数;        
       应用:serialize()就是将PHP中的变量如对象(object),数组(array)等等的值序列化为字符串,
                 方便存储在数据库、Session、Cookie、文件中等

2、json_encode/json_decode 其他语言都有类似的函数,生成的字符串可以给多种语言使用,作为多语言之间数据传递    用。把一个对象或数组转换成json字符串,作用:方便在网络中传输,方便存储。    应用: 手机app  java/ios向服务器请求的命令转换成json格式提交到服务器,服务器端的语言无论是否是php,都有具备的反函数将其转换为数组或对象,再进行处理.同样的服务端处理完后也需要将数据转换成json格式返回给手机端.

猜你喜欢

转载自blog.csdn.net/weixin_37616043/article/details/81078368