【发布时间】:2023-02-21 22:26:00
【问题描述】:
我有一个文本文件。我想读取文件并从元素中获取一些数据。当我阅读此文件时,它可能是返回字符串(我不确定)。该文件包含一些数据,例如以下内容:
Can we get Prism Cluster Mail in summarize way like below.
----------------------------------------------------------------
{
"Employees" : [
{
"userId":"rirani",
"jobTitleName":"Developer",
"firstName":"Romin",
"lastName":"Irani",
"preferredFullName":"Romin Irani",
"employeeCode":"E1",
"region":"CA",
"phoneNumber":"408-1234567",
"emailAddress":"romin.k.irani@gmail.com"
},
{
"userId":"nirani",
"jobTitleName":"Developer",
"firstName":"Neil",
"lastName":"Irani",
"preferredFullName":"Neil Irani",
"employeeCode":"E2",
"region":"CA",
"phoneNumber":"408-1111111",
"emailAddress":"neilrirani@gmail.com"
},
{
"userId":"thanks",
"jobTitleName":"Program Directory",
"firstName":"Tom",
"lastName":"Hanks",
"preferredFullName":"Tom Hanks",
"employeeCode":"E3",
"region":"CA",
"phoneNumber":"408-2222222",
"emailAddress":"tomhanks@gmail.com"
}
]
}
我想提取 userId、jobTitleName 和 phoneNumber。我怎样才能做到这一点?我是 php 的新手。我试过以下代码。但它不能正常工作。有人可以帮忙吗?
header('Content-type: application/json');
$data = preg_split("/\r\n/", file_get_contents("cluster.txt"));
$dt= json_encode($data, JSON_UNESCAPED_SLASHES);
$final_dt=stripslashes($dt);
$final_dt_arr=json_decode($final_dt,true);
//echo "<pre>"; print_r($final_dt_arr);
echo $final_dt;
【问题讨论】:
-
我不明白你的尝试首先应该与提取数据的问题有什么关系?为什么要将其拆分成单独的行,然后再次进行 JSON 编码和解码?
-
请仔细阅读How to extract and access data from JSON with PHP? 上接受的答案,然后将您学到的概念应用到您尝试从您自己的 JSON 获取数据的过程中
-
只是为了清楚 - 文本“我们能不能……”和下面的
----行实际上是您文件内容的一部分,是吗?然后你应该拆分那些,然后将其余部分解码为有效的 JSON。 -
实际上我是 php 的新手,不知道我该怎么做?
-
这就是为什么我给你一个指南来学习原则!确保您也了解 PHP 数组的一般知识。如果你学会了原理,那么你就可以应用它们,然后你就可以解决这个场景以及以后所有相关的场景。