如何在结果查询中扫描图像 URL


How to scan for a image url in a result query

 <?php
 $result = mysql_query("MYSQL query" );
 if (!$result) {
 echo 'Could not run query: ' . mysql_error();
 exit;
 }
 $rows = mysql_fetch_row($result);
 echo $row[0]; // id
 echo $row[20]; // the extra_info field
  ?>

上面的查询返回了完整的extra_info字段,如下所示

http://example.com/ext/lib/exe/process.php?t=87458+52&w=466&h=471&:forum_pic:queue_hasb_bunny_khd_tyun_02300.jpg,Imm处理,http://example.com/storage/high resolution/i-white bunny-tyun.jpg,仅现金支付,圣诞节后处理,小心处理通知,日期:2-5-2015

但我只需要图像网址,所以以下内容

  $extraFieldData = explode(',', $row[20]);
  echo $extraFieldData[0];
  echo $extraFieldData[2];

它工作正常,但并非始终extra_info字段将包含与 $extraFieldData[0] 和 $extraFieldData[2] 相同的位置的图像 url,那么如何在结果查询中检查图像 url 而不提及它们的位置?

如果您可以确定图像 url 字符串将始终包含的一些区别特征,则可以在数组的每个元素中检查该特征。例如,如果您发现要查找的元素将始终包含"http",则可以执行以下操作:

$extraInfo = "http://example.com/ext/lib/exe/process.php?t=87458+52&w=466&h=471&:forum_pic:queue_hasb_bunny_khd_tyun_02300.jpg, Imm processing,http://example.com/storage/high resolution/i-white bunny-tyun.jpg,only cash payment,process after christmas, handle with care notification, date: 2-5-2015";
$extraFieldData = explode(',', $extraInfo);
$images = array();
foreach($extraFieldData as $efd) {
    if (strpos($efd, 'http') !== false) {
        $images[] = $efd;
    }
}

(如果搜索"http"不适合您的情况,您可以查找其他一些显着特征 - 例如文件扩展名。

查看演示