dongzhong8834 2016-05-22 15:34
浏览 115

在PHP中搜索json文件的文件内容并返回结果

I am trying to create a search a function in php which searches for the data contained inside a Json file. I am able to do this for a normal text file which returns a list of results based on what has been entered in the search field which returns closet match. However does not work when doing this same for a json file and does not return anything.

search.php

if (isset($_POST) && isset($_POST['txt'])) {

    $search = $_POST['txt'];
    $file = file('data/contacts.json');
    $found = false;

    $jsonData = json_decode($file, true);

    foreach ($jsonData as $line) {
        if (strpos($line, $search) !== false) {
            $found = true;
            echo $line;
        }
    }
    if (!$found) {
        echo 'No match found';
    }
}

contacts.json

[
    {
    "id": 3,
    "forename": "John",
    "surname": "Smith",
    "email": "j@hotmail.com",
    "address": "addresss",
    "telephone": "01232302323"
},
{
    "id": 4,
    "forename": "Keith",
    "surname": "Miller",
    "email": "K@hotmail.com",
    "address": "ssdsds",
    "telephone": "01232302323"
},
{
    "id": 5,
    "forename": "Doug",
    "surname": "Howard",
    "email": "d@hotmail.com",
    "address": "test",
    "telephone": "01232302323"
},
{
    "id": 2,
    "forename": "r",
    "surname": "r",
    "email": "email@gmail.com",
    "address": "test",
    "telephone": "01232302323"
}

 ]
  • 写回答

1条回答 默认 最新

  • dongou5100 2018-11-03 13:40
    关注

    Change this line $jsonData = json_decode($file, true); to

    $jsonData = json_decode(json_encode($file),true);

    评论

报告相同问题?

悬赏问题

  • ¥15 求帮我调试一下freefem代码
  • ¥15 R语言Rstudio突然无法启动
  • ¥15 关于#matlab#的问题:提取2个图像的变量作为另外一个图像像元的移动量,计算新的位置创建新的图像并提取第二个图像的变量到新的图像
  • ¥15 改算法,照着压缩包里边,参考其他代码封装的格式 写到main函数里
  • ¥15 用windows做服务的同志有吗
  • ¥60 求一个简单的网页(标签-安全|关键词-上传)
  • ¥35 lstm时间序列共享单车预测,loss值优化,参数优化算法
  • ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
  • ¥100 为什么这个恒流源电路不能恒流?
  • ¥15 有偿求跨组件数据流路径图