向stdClass对象数组添加值

时间:2016-12-28 12:05:32

标签: php mysql

我有一个像这样的对象

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 | uploads / 1482860841920.jpg,uploads / 45828gf1920.jpg,..

不丢失旧数据

2 个答案:

答案 0 :(得分:0)

$object = new StdClass;

$object->foo = array("uploads/1482860841920.jpg","uploads/1482860841920.jpg","uploads/1482860841920.jpg");
像这样添加值..

答案 1 :(得分:0)

您的问题有两个简单的解决方案。

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

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

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

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

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

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

当你想插入数据库时​​,你implode你的数组。