php查询mysql,返回json格式数据
php代码:
<?php $conn=mysql_connect("localhost","root",""); if(!$conn){ echo "connect failed"; exit; } $sql="use student"; mysql_query($sql,$conn); $sql="set names utf8"; mysql_query($sql,$conn); $sql="select * from student"; $rs=mysql_query($sql,$conn); if(!$rs){ if(empty($rs)){ echo "empty res!"; } echo "get failed !"; exit; } //新建数组 $arr=array(); //遍历 //1.直接输出结果 //mysql_fetch_array:每次从结果集中取出一行作为数组,其他类似。 //while($row=mysql_fetch_array($rs,MYSQL_ASSOC)){ // $arr[]=$row; //} //2.转换为对象,处理数据 class Stu{ public $name; public $age; } while($row=mysql_fetch_object($rs)){ $s=new Stu(); $s->name=$row->sname; $s->age=$row->sage; //填充数组 $arr[]=$s; } //对变量进行json编码 echo json_encode(array("state"=>"success","student"=>$arr)); //释放结果 mysql_free_result($rs); //关闭连接 //通常不需要使用 mysql_close(),因为已打开的非持久连接会在脚本执行完毕后自动关闭 mysql_close(); ?>
运行效果:
注意:
1.对json数据格式的转码和解码是通过:json_encode和json_decode进行的,具体的过程可以参考php文档。
2.mysql_fetch_array() 中可选的第二个参数 result_type 是一个常量,可以接受以下值:MYSQL_ASSOC,MYSQL_NUM 和 MYSQL_BOTH。本特性是 PHP 3.0.7 起新加的。本参数的默认值是 MYSQL_BOTH。如果用了 MYSQL_BOTH,将得到一个同时包含关联和数字索引的数组。用 MYSQL_ASSOC 只得到关联索引(如同 mysql_fetch_assoc() 那样),用 MYSQL_NUM 只得到数字索引(如同 mysql_fetch_row() 那样)。
声明:该文观点仅代表作者本人,入门客AI创业平台信息发布平台仅提供信息存储空间服务,如有疑问请联系rumenke@qq.com。
- 上一篇: html5本地存储
- 下一篇:没有了