php - 使用 PHP 从文件夹中获取图片名称 - 然后在其中查找数字,然后分别将每个数字插入 MySQL 表中

标签 php mysql mysql-insert-id

我有这个文件夹d:/data/pics,其中的图片名为1101-a.jpg1101-b.jpg1102-a.jpg1102-b.jpg 等。图片 a 和 b 始终为相同编号 - 请注意,这 a 和 b 只是后面文本的表示“数字-”部分。但对于每个数字总是有 2 个结果。

我有一个带有“pics”表的 MySQL 数据库。它有“id”、“number”、“title1”和“title2”列。 “号码”列已有 1101、1102、1103 等。

我需要从目录中查找所有图片,从它们的名称中获取数字,在我的 MySQL 表中查找相同的数字并将适当的图片名称插入数据库中。每个号码有两张图片。

现在,我知道如何从目录中获取名称,但我无法将其插入数据库,因为我有两张相同编号的图片,之后需要与 mySQL 中的同一行配对。

     $directory = opendir("d:/data/images"); 
     $image_format = array("jpg, jpeg, png");
     $image_names = array(); 
     while ($file = readdir ($directory)) {
     if(in_array(substr(strtolower($file), strrpos($file,".") + 1),$image_format))
     {
     array_push($image_names,$file);
      }
     foreach ($image_names as $row) {
     //HERE I NEED THE NUMBER IN PIC'S NAME EXTRACTED AS A VALUE FOR EACH PIC:
     $pic_number = "$_GET INTEGER FROM IMAGE_NAMES (or $row)" ;
     // this i don't know.
     $id = $_GET($row['id']);
     $number = $_GET($row['number']);
     //NOW HERE I NEED THAT $pic_number FROM image_names ABOVE... and then
     $sql = "INSERT INTO images (title1, title2) VALUES ($row) WHERE $number = $pic_number;";
     mysql_query($sql); 
     }
     }
     closedir($directory);

我写得很简短,没有转义,以尽可能简化问题。

最佳答案

我会做这样的事情:

$images = glob("d:/data/images/*-a.{jpg,png,jpeg}", GLOB_BRACE));
foreach($images as $img){
$path_parts = pathinfo($img);
$img = $path_parts['basename'];
$ext = $path_parts['extension'];

$imge = explode('-',$img);
$pic_number = $imge[0];

$file1 = $pic_number."-a.".$ext;
$file2 = $pic_number."-b.".$ext;

.....
}

关于php - 使用 PHP 从文件夹中获取图片名称 - 然后在其中查找数字,然后分别将每个数字插入 MySQL 表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29760002/

相关文章:

php - Magento 2 : How to change Payment Action Method on the fly in Paypal Express

php - 根据商店分支选择表上的特定前缀

php - Facebox 取消事件

php - 从 Laravel 框架创建一个在线用户(问题)

php - MySQL SELECT PHP 数据而不将其发布 WordPress

mysql - SQL PHP 获取最后一个 ID

php - Mysql多次查询和mysql_insert_id()?

php - fatal error : Uncaught exception 'mysqli_sql_exception' with message 'No index used in query/prepared statement'

php - INSERT 到 MYSQL 中,然后在关闭连接之前选择插入 id,然后将此 id 添加到其他 3 个表中

查找域名年龄的PHP脚本