2017-04-22 89 views
0

不知道我是否正确提问,如果我错了,请纠正我。 我知道你需要一个数组做破灭,</a>后反而增加了空间,我想要做的破灭在.=你可以做implode。= in php?

for ($i=1; $i<=$lastPage; $i++) { 
    $pageLink .= "<a href='ajax.php?action=merchantlist&merchant_id=" . $merchant_id . "p=".$i."'>".$i."</a>"; 
}; 
$pageLinks = implode(' ', $pageLink); 
+0

编号'。= =正在制造一个字符串,而不是一个数组。只需在该行的末尾添加一个空格。如果你想删除最后一个空格,你可以在循环外使用'rtrim'。另外'p'不会成为你正在构建的链接中的一个参数,你需要一个'&',除非'$ merchant_id'具有那个? – chris85

+0

你在做什么? –

回答

0

。=表示要追加到先前定义的变量(字符串mostlikely)。所以在你的情况下,你正在将一个字符串从你的循环中唤醒,以至于你的变量没有被初始化。

所以你可以做这样的事情,并删除破灭:

$pageLink=""; 
for ($i=1; $i<=$lastPage; $i++) { 
    $pageLink .= "<a href='ajax.php?action=merchantlist&merchant_id=" . $merchant_id . "p=".$i."'>".$i."</a>"; 
}; 
echo $pageLink; 

或创建一个数组(像你原来的问题是要求),但我认为这是一个unessecary一步。 (初始化一个数组,调用一个函数来创建字符串),就像你可以使用1变量并通过追加它来避免函数阈值一样(就像在我的第一个代码片段中一样)。

for ($i=1; $i<=$lastPage; $i++) { 
    $pageLink[] = "<a href='ajax.php?action=merchantlist&merchant_id=" . $merchant_id . "p=".$i."'>".$i."</a>"; 
}; 
$pageLinks = implode(' ', $pageLink); 

    echo $pageLinks; 

也是我认为 “P =” 之前你缺少你的字串的&

$pageLink .= "<a href='ajax.php?action=merchantlist&merchant_id=" . $merchant_id . "p=".$i."'>".$i."</a>"; 

应与p之前& =像这样

$pageLink .= "<a href='ajax.php?action=merchantlist&merchant_id=" . $merchant_id . "&p=".$i."'>".$i."</a>"; 

另一个事情,我会url_encode任何在你的href可能是一个字符串,所以一个appostrophe不会破坏你的html属性。

相关问题