我有四个名为逗号的文件在数据库中的一个字段中分隔,如下所示:file1
,file2
,file3
,file4
。它可能会根据文件上传而改变。用户可以上传最多4个文件,最少一个文件。但我无法得到它。我用爆炸,但它需要很长时间。如何使用PHP从数据库中获得用逗号分隔的值
我使用这个代码:
$imagefiles = $row["imagefiles"];
$cutjobs = explode(",", $imagefiles);
$cutjobs1 = count($cutjobs);
$image1 = $cutjobs[0];
$image2 = $cutjobs[1];
$image3 = $cutjobs[2];
$image4 = $cutjobs[3];
if (empty($image1)) {
$imagefiles1 = "";
} else {
$imagefiles1 = 'http://projects.santabantathegreat.com/glassicam/uploads/'.$registerid.
"/".$viewjobsid.
"/".$image1;
}
if (empty($image2)) {
$imagefiles2 = "";
} else {
$imagefiles2 = 'http://projects.santabantathegreat.com/glassicam/uploads/'.$registerid.
"/".$viewjobsid.
"/".$image2;
}
if (empty($image3)) {
$imagefiles3 = "";
} else {
$imagefiles3 = 'http://projects.santabantathegreat.com/glassicam/uploads/'.$registerid.
"/".$viewjobsid.
"/".$image3;
}
if (empty($image4)) {
$imagefiles4 = "";
} else {
$imagefiles4 = 'http://projects.santabantathegreat.com/glassicam/uploads/'.$registerid.
"/".$viewjobsid.
"/".$image4;
}
}
$data[] = array('imagearray' => array($imagefiles, $imagefiles1, $imagefiles2, $imagefiles3));
}
echo json_encode($data);
}
我得到这样的输出:
[{"imagearray":["http:\/\/projects.santabantathegreat.com\/glassicam\/uploads\/60\/30\/file1.jpg","http:\/\/projects.santabantathegreat.com\/glassicam\/uploads\/60\/30\/file2.jpg",""]}]
如果你看到这个imageArray最后一个越来越 “” 这意味着一些file1
,file2
, file3
,file4
一个名字是丢失的,所以我想显示是否有文件名不存在意味着我不想显示空值与“”
我有一个字段与file1,file2,file3,file4所以时间,我们将有file1,file3然后剩下不会在那里,所以我想计算文件名称用逗号分隔,如果file1是那里应该打印,如果file3是那里不是那么它不应该显示“”
你为什么不使用爆炸? – PHPMan
我是新来的PHP有什么方法可以使用比爆炸 – rocks
虽然它可能或不可能在你的控制之内,但这是一个糟糕的数据库设计。无论何时将多个项目合并到一个数据库列中,您都会遇到问题分裂的问题。更好的设计是使表包含文件名并连接回主表。 –