首页 > 后端开发 > php教程 > 提取文本(txt)中json数组中的某一项值

提取文本(txt)中json数组中的某一项值

WBOY
发布: 2016-10-22 00:14:21
原创
1470 人浏览过

1.项目和第三方平台做了对接,之前的技术人员将返回结果写入了txt文件,内容有下单人姓名、手机号、jason数组(数组里面是第三方平台返回的结果);
现在我需要将json里面的某一项值提取出来,提交给支付宝。 我不知道该怎么操作

提取文本(txt)中json数组中的某一项值

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

回复内容:

1.项目和第三方平台做了对接,之前的技术人员将返回结果写入了txt文件,内容有下单人姓名、手机号、jason数组(数组里面是第三方平台返回的结果);
现在我需要将json里面的某一项值提取出来,提交给支付宝。 我不知道该怎么操作

提取文本(txt)中json数组中的某一项值

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

有两种方法:

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

  2. 用正则匹配筛选。

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

<code>public function getText(){
        $file=APPPATH.'upload/aaa.txt';
        $content=file($file);
        foreach ($content as $cont){
            echo $cont."<br>";
            }
        }</code>
登录后复制

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

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

谢邀。

<code>json_decode("json字符串", true)["PayDeclareAmount"] 即可。</code>
登录后复制

学习一下 大家的回答真好

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板