无法爆炸HTTP请求

时间:2018-10-24 00:12:58

标签: php laravel laravel-5

我有一个输入,打算以以下方式写入图像标签:

Tag1, Tag2, Tag3

然后创建一个数组,我可以使用explode()PHP函数像这样循环遍历:

$tagsRaw = $request['artwork-tags'];
$tags = explode(',', $tagsRaw);

foreach($tags as $tag) {
    $tag = new Tag();
    $tag->name = $tag;
    $tag->save();

    $image->tags()->attach($tag);
}

可悲的是我遇到了这个错误:

  

类型错误:参数1传递给   Illuminate \ Database \ Grammar :: parameterize()必须为数组类型,   给定的字符串,称为   C:\ MAMP \ htdocs \ Art \ vendor \ laravel \ framework \ src \ Illuminate \ Database \ Query \ Grammars \ Grammar.php   在第681行◀

我假设我正在尝试爆炸()无法爆炸的东西,并且我没有将字符串传递给explode()。

1 个答案:

答案 0 :(得分:3)

您正在立即覆盖$tag变量。

$tagsRaw = $request['artwork-tags'];
$tags = explode(',', $tagsRaw);

foreach($tags as $tagName) {
    $tag = new Tag();
    $tag->name = $tagName;
    $tag->save();

    $image->tags()->attach($tag);
}