php调试用的几个小方法
1、PHP把一个对象转化成json字符串
$json_string = json_encode($object, JSON_FORCE_OBJECT);
json_encode($object); //结果:"[{"aa":"bb","cc":"dd"}]" json_encode($object,JSON_FORCE_OBJECT); //结果:"{"aa":"bb","cc":"dd"}"
2、php中echo、print、print_r、var_dump、var_export区别
(1) print和echo是语言结构,echo输出多个值,多个值之间用逗号分隔,无返回值;print只能输出一个值,有返回值。echo和print输出整型和字符串,没法打印布尔型,如果true,打印1,false打印为空。
(2) print_r()除了输出整型和字符串,还可以输出数组和对象,数组和对象使用键值对形式表示,数组时候array(键值对形式);对象时候Object(键值对形式);没法打印布尔型,如果true,打印1,false和NULL打印为空。
(3) var_dump()判断变量的类型与长度,并输出变量的数值。如果是数组和对象,将递归展开值,通过缩进显示其结构。能够打印布尔和NULL。
(4) var_export()和var_dump()类似,其返回合法的php代码,其返回值可以赋值给php变量。
(5) var_dump()可以打印多个变量,中间用逗号隔开;print_r()和var_export()打印一个变量,第二个参数设定为true,将打印内容返回。
注:
(1)echo、print语言结构,非函数,能打印整型和字符串。
(2)print_r()和var_export()打印整型、字符串外,还能打印数组、对象,以键值对形式打印数组、对象。var_export()还可打印布尔值。
(3)var_export()在第二个参数设置true,不会打印变量,而是将其以字符串形式返回,返回值可以赋值给php变量。
(4)var_dump()除了打印整型、字符串、数组、对象,还能打印布尔型。而且是输出变量类型、长度和值。
var_dump(json_encode($post_data,JSON_FORCE_OBJECT));
会打印出如下信息:
/includes/api_model.php:114:string '{"Data":{"Top":"1","PageSize":"1","PageIndex":"1","Filter":"F_103 like '2165' ","OrderBy":"FNumber asc","Fields":"F_103,FNumber,FName"}}'
再如:
print_r($post_data);
会打印出如下信息:
Array ( [Data] => Array ( [Top] => 1 [PageSize] => 1 [PageIndex] => 1 [Filter] => F_103 like '2165' [OrderBy] => FNumber asc [Fields] => F_103,FNumber,FName ) )
-------------------------------
print_r(json_encode($post_data));
{"Data":{"Top":"1","PageSize":"1","PageIndex":"1","Filter":"F_103 like '2165' ","OrderBy":"FNumber asc","Fields":"F_103,FNumber,FName"}}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
2017-02-18 jgGrid获得的id值是主键的id而不是jqGrid的行号值