php输出json中的某个值,提取文本(txt)中json数组中的某一项值

1.项目和第三方平台做了对接,之前的技术人员将返回结果写入了txt文件,内容有下单人姓名、手机号、jason数组(数组里面是第三方平台返回的结果);

现在我需要将json里面的某一项值提取出来,提交给支付宝。 我不知道该怎么操作

bVEvjL

我要取得是数组里的 PayDeclareAmount":0.0075 这个值 请问大神们有什么思路?

回复内容:

1.项目和第三方平台做了对接,之前的技术人员将返回结果写入了txt文件,内容有下单人姓名、手机号、jason数组(数组里面是第三方平台返回的结果);

现在我需要将json里面的某一项值提取出来,提交给支付宝。 我不知道该怎么操作

bVEvjL

我要取得是数组里的 PayDeclareAmount":0.0075 这个值 请问大神们有什么思路?

有两种方法:

如果前面的格式相似的,都是n行开头,直接skip n行, 上面的数据,然后,后面读取的行信息的都拼接到一起后,json_decode(xxx, true);,再根据字段返回就行。读取一行使用fgets。

用正则匹配筛选。

因为我确定只要PayDeclareAmount后面的值

匹配规则 $checktxt="/^PayDeclareAmount&/"这样定义,问题是后面的值如何取出呢?

public function getText(){

$file=APPPATH.'upload/aaa.txt';

$content=file($file);

foreach ($content as $cont){

echo $cont."

";

}

}

我就讲文本列了出来 后面卡主了

正则好想有一个indexOf属性,返回匹配到的index值,你匹配到‘{’符号,往后截取全部,不就得到了一个json格式的字符串了吗,那后面的就好办了

谢邀。

json_decode("json字符串", true)["PayDeclareAmount"] 即可。

学习一下 大家的回答真好

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值