Php 防止将空字符串保存到数据库
目前,我有一个输入,用户要在其中写入标记并用逗号分隔它们。然后在后端,字符串被分解,每个标记被保存到数据库中。但是,如果我不写任何标记,则会将名为空字符串的标记保存到数据库中。我怎样才能避免呢 HTMLPhp 防止将空字符串保存到数据库,php,laravel,Php,Laravel,目前,我有一个输入,用户要在其中写入标记并用逗号分隔它们。然后在后端,字符串被分解,每个标记被保存到数据库中。但是,如果我不写任何标记,则会将名为空字符串的标记保存到数据库中。我怎样才能避免呢 HTML 您可以检查$tagsRaw是否为空: if(!empty($tagsRaw=$request->input('artwork-tags')) { $tags=explode(“,”,$tagsRaw); foreach($标记名为$标记名){ $tagExists=Tag::where('nam
您可以检查
$tagsRaw
是否为空:
if(!empty($tagsRaw=$request->input('artwork-tags'))
{
$tags=explode(“,”,$tagsRaw);
foreach($标记名为$标记名){
$tagExists=Tag::where('name',$tagName)->exists();
如果(!$tagExists){
$tag=新标签();
$tag->name=$tagName;
$tag->save();
$image->tags()->attach($tag);
}否则{
$existingTag=Tag::where('name',$tagName)->first();
$image->tags()->attach($existingTag);
}
}
}
您可以检查$tagsRaw
是否为空:
if(!empty($tagsRaw=$request->input('artwork-tags'))
{
$tags=explode(“,”,$tagsRaw);
foreach($标记名为$标记名){
$tagExists=Tag::where('name',$tagName)->exists();
如果(!$tagExists){
$tag=新标签();
$tag->name=$tagName;
$tag->save();
$image->tags()->attach($tag);
}否则{
$existingTag=Tag::where('name',$tagName)->first();
$image->tags()->attach($existingTag);
}
}
}
请求对象可以检查值是否为空字符串。像这样的东西可以很好地工作:
$tags = $request->filled("artwork-tags") ? explode(',', $request->input("artwork-tags")) : [];
foreach
循环不会被传递给它的空数组触及
从文件中: 如果要确定请求中是否存在值且该值不为空,可以使用“filled”方法: 如果($request->filled('name')){ // }
请求对象可以检查值是否为空字符串。像这样的东西可以很好地工作:
$tags = $request->filled("artwork-tags") ? explode(',', $request->input("artwork-tags")) : [];
foreach
循环不会被传递给它的空数组触及
从文件中: 如果要确定请求中是否存在值且该值不为空,可以使用“filled”方法: 如果($request->filled('name')){ // }
检查
$tagsRaw
是否为空。更简单的方法是在分解后添加对数组过滤器($tags)的调用,并将其结果分配回$tags。最好是将表的列声明为非空检查$tagsRaw
是否为空。更简单的方法是添加对数组过滤器($tags)的调用分解后,将其结果分配回$tags。最好是将表的列声明为NOTNULL
$tags = $request->filled("artwork-tags") ? explode(',', $request->input("artwork-tags")) : [];
if ($request->filled('name')) {
//
}