【发布时间】:2015-06-21 15:17:17
【问题描述】:
我将一些数据以逗号为基础的字符串存储在我的数据库中,如下所示:
value1, value2, value3, value4 etc...
这是字符串的变量:
$data["subscribers"];
我有一个函数可以根据用户的要求从字符串中删除他们的值或添加它。
这就是我删除它的方式:
/* Remove value from comma seperated string */
function removeFromString($str, $item) {
$parts = explode(',', $str);
while(($i = array_search($item, $parts)) !== false) {
unset($parts[$i]);
}
return implode(',', $parts);
}
$newString = removeFromString($existArr, $userdata["id"]);
所以在上面的例子中,我从字符串中删除了 $userdata['id'](如果它存在的话)。
我的问题是..如何为基于逗号的字符串添加值?
【问题讨论】:
-
也许只有我一个人,但我很惊讶你能想出
removeFromString的逻辑,却无法为addToString这样做。 -
@light 我喜欢你的想法:-0
-
这真的不是一个好主意......在数据库中存储逗号分隔的值总是会给人们带来很多问题
-
@MarkBaker 有什么问题?
-
正是您遇到的问题:从集合中添加、修改和删除值.....更不用说在逗号分隔值的集合中搜索具有特定值的记录了该列(查找用户 3 订阅的所有记录)
标签: php arrays explode implode