2016-12-28 56 views
-2

我有这样增值stdClass的对象数组

stdClass Object ([path] => uploads/1482860841920.jpg) 

和我想要的目的在于补充应以逗号分隔的其他值,所以我可以高达6附加价值

stdClass Object ([path] => uploads/1482860841920.jpg, uploads/1233441234.jpg,..) 

我想要实现的是更新我的数据库字段,而不会丢失以前的上传路径,用户可以继续添加他的上传路径高达6个值。我没有找到一种方法来实现它,虽然MySQL尝试使用PHP

它很棒如果我可以更新此表

ID |路径 1 |上传/ 1482860841920.jpg

id |路径 1 |上传/ 1482860841920.jpg,上传/ 45828gf1920.jpg ..

不失旧数据

+1

mysql是如何涉及到的?你能否展示你所尝试过的,因为目前尚不清楚你想达到什么目的。 – Jeff

+1

您不应将多个值作为分隔文本值存储在单个字段中,请将这些值作为单独记录输入。您可能需要添加其他表以适应此情况。 – Shadow

回答

0
$object = new StdClass; 

$object->foo = array("uploads/1482860841920.jpg","uploads/1482860841920.jpg","uploads/1482860841920.jpg"); 

这样增加值..

+0

感谢您的回复 – ricky

0

有2个容易解决您的问题。

第一个是连接到其他的新路径:

if(substr_count($object["path"], ",") < 5){ 
    $object["path"].=", ".$newPath; 
} 

然后,您可以直接插入变量到你的数据库。

另一个解决方案是使用一个数组:

//initialization 
$object["path"] = []; 

if(count($object["path"]) < 6){ 
    $object["path"][] = $newPath; 
} 

而且当你要插入到数据库中,你implode您的阵列。