用分号分隔标签

syr*_*ull 0 php tags

我有;在MySQL数据库中分隔的标签,它们都在一个字段中.

所以每当我尝试加载该字段.数据将显示如下:

tag1 ; tag2 ; tag3

我想要做的是为每个标签添加网址.基本上我想这样显示:

<a href="http://example.com/tag1">tag1</a> 
<a href="http://example.com/tag2">tag2</a>  
<a href="http://example.com/tag3">tag3</a>
Run Code Online (Sandbox Code Playgroud)

我当时想用来str_replace替换它;,</a>但是我如何做每个标签的开头!

有没有比这更好的代码str_replace

Emi*_*röm 8

你可以"欺骗",只是爆炸;循环通过生成的数组.


几乎从来都不是正确的方法!你应该总是努力规范你的数据库(如果你不这样做,你应该确切地知道你选择不这样做的原因).因为它目前是你的表甚至没有遵守第一个普通形式,它表明你应该在每个领域只有原子数据.这是一个坏主意的原因是因为您将很难查询表(例如获取具有特定标记的所有行).

应该做的是为标签创建一个单独的表,包含两个字段:( postid来自你已经拥有的表)和tag.然后使用JOIN操作将它们连接在一起.