以下代码是一个关联数组,它从搜索引擎获取信息,例如url,title和snippet,
$googleArray = array();
$find = array ('http://','https://','www.');
$score = 100;
foreach ($all_items as $item) //
{
$googleArray[str_replace ($find, '', ($item->{'link'}))] = array(
'title'=> $item->{'title'},
'snippet' => $item->{'snippet'},
'score' => $score--
);
}
我知道想在网页上用html打印出来,我已经尝试过这段代码了。
foreach ($all_items as $item)
{
echo "<href={$googleArray[($item->{'link'})]}>". $googleArray['title'] . "</a> <br>" .
$googleArray['link'] . "<br>" . $googleArray['snippet'];
echo "<br>"; echo "<br>";
}
这些是我得到的错误
Notice: Undefined index: http://www.time.com/
Notice: Undefined index: title
Notice: Undefined index: link
Notice: Undefined index: snippet
任何人都可以看到我出错的地方
答案 0 :(得分:1)
要从数组中读取,您使用项目的link
属性作为键:
echo "<href={$googleArray[($item->{'link'})]}>
但是在代码的前面,你没有使用那个确切的链接来写入值。你用
写$googleArray[str_replace ($find, '', ($item->{'link'}))];
所以你没有使用$item->{'link'}
,而是使用该链接的修改版本(带有str_replace)。
这是一个问题。
另一个问题是,title
和snippet
是数组中的键,它是$googleArray
中键的值,因此要获取这些值,您应该阅读{{ 1}}而不是$googleArray[$key]['snippet']
。修复第一个问题后,$googleArray['snippet']
在这种情况下是更正后的密钥。 ;)
答案 1 :(得分:0)
最终这很简单
foreach($all_items as $item){
echo "<a href=\"{$item->link}\">{$item->title}</a><p>{$item->snippet}</p>". "<br>";
}
我只花了整整一天才弄清楚,哈哈,