用PHP创建带有变量的链接的逗号分隔列表

时间:2018-11-22 07:31:12

标签: php list hyperlink

我有一个变量,用于呈现用户名列表。现在,我需要为每个用户名添加一个链接。链接是通过固定的URL和用户名作为变量构建的。

示例链接: https://www.example.org/something?userid= $ username

$usernames = $_POST['username'];
$username = '';
foreach($usernames as $value) {
$username .= "'" . $value . "', ";
}
$username = rtrim($username, ', ');

然后,我有了列表的构造:

<?php  $urls = explode(',', $usernameid);
$nritems = count ($urls); 
$positem = 0;
foreach($urls as $key => $usernameid)
{
echo "<a href="https://www.example.org/something?userid=' . $usernameid . 
'">'. $usernameid . '</a>";
if (++$positem != $nritems) { echo ", ";}
}?>

该变量还用于代码的其他部分,因此无法更改。该列表现在不显示。

感谢您的帮助。

更新:表单:

<form action="list.php" method="post" autocomplete="off">
  <div id="usrselect">
    <label>Select user <input type="text" name="username[]" id="userid" class="typeahead" required/></label>
   </div>
   <div class="button-section"> <input type="submit" name="List" /></div>
</form>

2 个答案:

答案 0 :(得分:1)

如果您只想正确地引用报价:

echo '<a href="https://www.example.org/something?userid='.$usernameid.'">'.$usernameid.'</a>';

echo "<a href=\"https://www.example.org/something?userid={$usernameid}\">{$usernameid}</a>";

echo sprintf('<a href="https://www.example.org/something?userid=%d">%d</a>', $usernameid, $usernameid);

答案 1 :(得分:0)

有效的解决方案,适用于可能面临相同问题的人:

<?php $urls = explode(',', $usernameid);
$nritems = count ($urls); 
$positem = 0;
$displayuser = array("'", " ");
foreach($urls as $key => $usernameid)
{
echo '<a href="http://www.example.com/something?userId='.str_replace($displayuser, "", $usernameid).'">'.str_replace($displayuser, "", $usernameid).'</a>';
if (++$positem != $nritems) { echo ", ";}
}?>