PHP中json解码数组的循环
我有Json格式的数据,我已经将其解码成php数组,打印出来后生成以下内容(只是一段信息) 我的问题是如何循环浏览这些信息,打印标题,然后打印值 我尝试了以下方法,一次打印所有数据PHP中json解码数组的循环,php,arrays,json,foreach,Php,Arrays,Json,Foreach,我有Json格式的数据,我已经将其解码成php数组,打印出来后生成以下内容(只是一段信息) 我的问题是如何循环浏览这些信息,打印标题,然后打印值 我尝试了以下方法,一次打印所有数据 foreach($data['SubTitle'] as $key => $value){ echo $value; } 然后我试着打印信息部分,我认为这可能会起作用,但是却抛出了一个非法的字符串偏移量错误 foreach($data['SubTitle'] as $key =>
foreach($data['SubTitle'] as $key => $value){
echo $value;
}
然后我试着打印信息部分,我认为这可能会起作用,但是却抛出了一个非法的字符串偏移量错误
foreach($data['SubTitle'] as $key => $v){
echo $v['Info'];
}
我可以从标题数组中获取信息,因为它是直接的,因为它在标题中只有数据值。但是,我希望字幕数组的输出打印标题和信息,如下所示:
欢迎来到公司名称
有关该公司的资料
我原以为这将是直截了当的,但事实证明这比预期的要困难得多,并且已经占用了很多时间,所以任何帮助都将不胜感激 从以下内容更改代码:
foreach($data['SubTitle'] as $key => $v){
echo $v['Info'];
}
为此:
foreach($data['SubTitle'] as $v){
echo $v . "<br/>"; // the <br/> makes a new line
}
$v不再是foreach中的数组,而是一个变量
有关html标记的一些信息:
还要看看循环是如何工作的:所以我假设您有一个JSON字符串,如下所示:
$json = '{"Title":{"Heading": "Company Name", "Info": null}, "SubTitle": {"Heading": "Welcome to Company Name", "Info": "information on the company"}}';
可视化的,看起来像这样:
$json = '{"Title":{"Heading": "Company Name", "Info": null}, "SubTitle": {"Heading": "Welcome to Company Name", "Info": "information on the company"}}';
因此,如果您已将此json解码为关联数组:
$result = json_decode($json, true);
然后,为了访问数据,您不需要对其进行“循环”;您需要做的只是:
echo $result['Title']['Heading']; // will print 'Company Name'
echo $result['Title']['Info']; // will print nothing, as it is empty
echo $result['SubTitle']['Heading']; // will print 'Welcome to Company Name'
echo $result['SubTitle']['Info']; // will print 'information on the company'
希望这有帮助。这是基础php,请阅读以下阅读材料:
echo$v代码>将足够我编辑我的问题,以显示我希望实现的输出。如果您能提供任何信息,请提前向我们表示感谢help@catcon我尝试了echo v,它在一个输出中打印所有信息,但我要求信息分开。它不是在一个输出中打印所有信息,而是分别通过每个项目和echo
每个项目。您需要分隔信息,您可以通过添加空格/新行/用div/等将其包装,即:echo“$v”代码>
echo $result['Title']['Heading']; // will print 'Company Name'
echo $result['Title']['Info']; // will print nothing, as it is empty
echo $result['SubTitle']['Heading']; // will print 'Welcome to Company Name'
echo $result['SubTitle']['Info']; // will print 'information on the company'