php var转换成数组,PHP-代码挑战:将数组的var_dump转换为json

直到今天,我还没有真正考虑过这一点,但是在网上搜索之后,我什么都没找到.也许我不是在搜索中说正确的话.

给定一个嵌套数组,其中var_dumped

array(3) { 'id' =>  string(19) "as-agent-to-shipper" 'name' => string(19) "as-agent-to-shipper" 'children' => array(1) {

[0] =>

array(3) {

'id' =>

string(28) "agility-logistics-s-a-de-c-v"

'name' =>

string(30) "AGILITY LOGISTICS S.A. DE C.V."

'data' =>

array(2) {

'band' =>

string(22) "-AS AGENT TO SHIPPER -"

'relation' =>

string(13) "Buyer of band"

}

}

}

}

挑战在于:将var_dumped数组转换为json的最佳优化方法是什么?

这只是正则表达式的问题吗?还是有其他方法?我正在寻找创造力.

解决方法:

使用RegEx解析此结构很可能是不可能的.

可以为它编写一个专门的解析器,但是鉴于PHP可以生成no promises on its format,这样做是一个非常糟糕的主意.在次要的PHP版本更新中,格式可能会更改,并且解析器将停止工作.

甚至var_dump都是有损的,在某些情况下,您无法仅通过对象表示来恢复对象的状态.最简单的示例是资源. var_dumping打开的文件将返回类型(流)的resource(5),这完全不足以对其执行任何有用的操作.

总而言之,这听起来像是个坏主意,无论解决什么问题,都应以不同的方式解决.

标签:var-dump,arrays,json,php,regex

来源: https://codeday.me/bug/20191122/2061605.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值