我创建了一个简单的博客应用程序,其中所有内容都是从数据库检索并尝试在我的页面上进行解析。我有一个“主”页面,所有帖子都可见,因此我从数据库中选择所有帖子并尝试解析它们。
因此,在检索所有数据时,我将它们传递到一个数组中,最终得到以下结果:
var_dump($feed);
给我这个:
array(3) { [0]=> array(5) { ["url"]=> string(9) "firstpost" ["baseurl"]=> string(6) "myblog" ["title"]=> string(22) "super awesome new post" ["publish"]=> string(20) "7 Jan 2014, 10:10 am" ["content"]=> string(419) "<p>sdfasjkgasg</p> <p>asdfg</p> <p>as</p> <p>dgsdg</p> <p><strong>this bold text</strong></p> <p>this is <em>italic</em></p> <p> </p> <ol> <li><em>skata q</em></li> <li><em>skata 2</em></li> <li><em>skata 3</em></li> </ol>" } [1]=> array(5) { ["url"]=> string(6) "POST_2" ["baseurl"]=> string(6) "myblog" ["title"]=> string(7) "Title 2" ["publish"]=> string(21) "25 Dec 2013, 10:58 am" ["content"]=> string(343) "<p>This is a plain text.</p> <p><strong>Here goes the bold text.</strong></p> <p><em>Oh and we got some Italic aswell.</em></p> <p>You know you can words too?</p> <p> </p> <p> </p> <p>And here we got some bulletings:</p>" } [2]=> array(5) { ["url"]=> string(6) "POST_3" ["baseurl"]=> string(6) "myblog" ["title"]=> string(24) "Super-awesome cool title" ["publish"]=> string(21) "25 Dec 2013, 10:47 am" ["content"]=> string(904) "<p>This is a plain text.</p> <p> </p> <p><strong>Here goes the bold text.</strong></p> <p> </p> <p><em>Oh and we got some Italic aswell.</em></p> <p> </p> <p>You know you can <span style="text-decoration: underline;">underline</span> words too?</p> <p> </p> <p><span style="text-decoration: line-through;">Or strikeout. Cool huh?</span></p> <p> </p> <p>And here we got some bulletings:</p> <ul> <li>First</li> <li>Second</li> <li>Third</li> </ul> <p>and of course, numbering:</p> <ol> <li>Number 1</li> <li>Number 2</li> <li>Number 3!</li> </ol> <p> </p>" } }
所以现在我尝试解析每一个:
foreach ($feed as $obj) {
echo "<div>URL:".$obj->url."</div>";
}
没有结果。所以我尝试转储 $obj->url
并得到了这个:
URL:NULL NULL NULL
如何解析上述数组中的每个数据?
最佳答案
这样做。
foreach ($feed as $obj) {
echo "<div>URL:".$obj['url']."</div>";
}
您正在将数组作为对象进行访问。执行 $obj['url']
而不是 $obj->url
,如图所示。
关于PHP:循环并解析数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21526735/