我有一个逗号分隔的字符串,该字符串包含标签列表,并希望将其转换为数组以获取每个标签的链接。
例子:
$string = 'html,css,php,mysql,javascript';
我想要这样:
<a href="tag/html">html</a>, <a href="tag/css">css</a>, <a href="tag/php">php</a>, <a href="tag/mysql">mysql</a>, <a href="tag/javascript">javascript</a>
因此,结果将是一个字符串,其中包含逗号分隔的链接,每个链接后都有一个空格,最后一个链接后没有逗号。
我有此功能,其中$ arg ='html,css,php,mysql,javascript':
function info_get_tags( $arg ) {
global $u;
$tagss = '';
if ( $arg == '' ) {
return '';
} else {
$tags_arr = explode( ',' , $arg );
foreach ( $tags_arr as $tag ) {
$tags = '<a href="' . $u . 'tag/' . $tag . '/" title="' . $tag . '">' . $tag . '</a>';
$tagss .= $tags;
}
return $tagss;
}
}
该脚本对我有用,但没有逗号和空格,如果在此处添加逗号和空格,则可以:
$tags = '<a href="' . $u . 'tag/' . $tag . '/">' . $tag . '</a>, ';
我们会收到逗号和空格,但最后一个链接后面会出现逗号。
最佳答案
就像explode
d一样,您可以再次 implode
:
$tags = explode(',', $arg);
foreach ($tags as &$tag) {
$tag = '<a href="' . $u . 'tag/' . $tag . '/" title="' . $tag . '">' . $tag . '</a>';
}
return implode(', ', $tags);
关于php - 将逗号分隔的字符串转换为数组,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5845121/