Php 如何用逗号分隔数组,但不要';我不要最后一个逗号
我想显示一张专辑的艺术家,他们之间用逗号分隔,并作为链接。艺术家的名字保存在数组中。 代码将解释更多Php 如何用逗号分隔数组,但不要';我不要最后一个逗号,php,arrays,foreach,Php,Arrays,Foreach,我想显示一张专辑的艺术家,他们之间用逗号分隔,并作为链接。艺术家的名字保存在数组中。 代码将解释更多 <?php $Artist_Name = array("artist1", "artist2","artist3"); ?> <p class="style18"><b>Artists</b>: <span class="style24"> <?php foreach ($Artis
<?php
$Artist_Name = array("artist1", "artist2","artist3");
?>
<p class="style18"><b>Artists</b>: <span class="style24">
<?php
foreach ($Artist_Name as $_value) {
$Value_new = str_replace(' ', '-', $_value);
?>
<a href= "<?=BASE_PATH?>artist/<?=$Value_new?>"><?=$_value?></a>,
艺术家:
,
我得到以下结果
artist1、artist2、artist3、
我只想去掉最后一个逗号。空间
提前谢谢。
任何帮助都非常有用:)使用内爆(“,”,$Artist\u Name)
(有关详细信息,请参阅)
更新
对于更复杂的情况,可以使用an进行每个元素的处理:
$Artist_Name = array("artist1", "artist2","artist3");
$artist_links = array_map(
function($value) {
return '<a href="/' . $value . '">' . $value . '</a>';
},
$Artist_Name
);
echo implode(', ', $artist_links);
$Artist_Name=数组(“artist1”、“artist2”、“artist3”);
$artist\u links=array\u map(
函数($value){
返回“”;
},
$Artist_Name
);
回声内爆(“,”,$artist_links);
有人问了这个问题,并回答了。但是,有几种方法可以做到这一点,例如:
$output = rtrim($string, ',');
编辑:阅读了关于这个答案的评论后,很明显你不想转换成字符串。因此,您可以在foreach中使用计数器,并检查最后一个计数器何时出现。如果是,请不要添加
,
。希望有帮助为了从字符串中删除最后一个逗号,您可以使用下面的代码
$lastCommaRemoved = rtrim($Value_new, ',');
更新
原来的代码有很多错误,这里是固定的一个
<?php
$Artist_Name = array("artist1", "artist2","artist3");
?>
<p class="style18"><b>Artists</b>:
<?php
foreach ($Artist_Name as $_value) {
$Value_new = str_replace(' ', '-', $_value);
echo '<span class="style24"><a href= "'.BASE_PATH.'artist/'.$Value_new.'">'.$_value.'</a></span>';
}
?>
因为$\u value变量的值中没有空格我希望不同的艺术家有不同的链接。这将转换字符串中的数组。这似乎是我不希望整个字符串作为链接的可能副本,但我在这里使用逗号
,
。假设artist1是Justin Bieber
对于seo友好的链接,应该是Justin Bieber
。@Pradeep很好的一点:)你是对的,那么上面的代码应该做这件事,你试过了吗?
$Value_new = str_replace(' ', '-', $_value);