php - 将逗号分隔的字符串转换为数组

标签 php arrays string

我有一个逗号分隔的字符串,它由标签列表组成,我想将其转换为数组以获得每个标签的链接。

例子:

$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>, ';

我们得到逗号和空格,但最后一个链接后会有一个尾随逗号。

最佳答案

就像你爆炸一样,你可以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/

相关文章:

javascript - 如何使用 JavaScript 将字符添加到字符串的随机空间?

php - 如何同步mysql数据库请求?

php - $post->post_parent 在页面上的行为与在 functions.php 中的行为不同

php - 删除用户但仍登录后销毁 session

java - 如何在 SQLData.writeSQL() for Oracle 中将 java.sql.Array 写入 java.sql.SQLOutput

arrays - 在 Fortran 中更改分配数组的形状

java - 在 Java 中使用 substring()

php - 如何使用javascript编写动态文本

c - 自由指针数组

python - 使用多个分隔符分隔字符串并仅提取单个字符