2017-03-04 76 views
0

我使用它来获取所有图像具有特定通配符名称:如何使用PHP glob()正确命令?

<?php 
$images = glob("/var/www/user/html/images/".$row['id']."@*.jpg"); 
foreach($images as $image) { 
echo "<img src=\"".str_replace("/var/www/user/html/images/", "http://www.example.com/images/", $image)."\">\n"; 
?> 

如果有例如四象匹配的glob模式()的输出是:

<img src="http://www.example.com/images/[email protected]"> 
<img src="http://www.example.com/images/[email protected]"> 
<img src="http://www.example.com/images/[email protected]"> 
<img src="http://www.example.com/images/[email protected]"> 

他们正确排序:[email protected], [email protected], [email protected], [email protected]

但是,如果有例如12图像输出是这样的:

<img src="http://www.exapmple.com/images/[email protected]"> 
<img src="http://www.exapmple.com/images/[email protected]"> 
<img src="http://www.exapmple.com/images/[email protected]"> 
<img src="http://www.exapmple.com/images/[email protected]"> 
<img src="http://www.exapmple.com/images/[email protected]"> 
<img src="http://www.exapmple.com/images/[email protected]"> 
<img src="http://www.exapmple.com/images/[email protected]"> 
<img src="http://www.exapmple.com/images/[email protected]"> 
<img src="http://www.exapmple.com/images/[email protected]"> 
<img src="http://www.exapmple.com/images/[email protected]"> 
<img src="http://www.exapmple.com/images/[email protected]"> 
<img src="http://www.exapmple.com/images/[email protected]"> 

正如你看到它是不是正确排序:[email protected], [email protected], [email protected], [email protected], [email protected], [email protected], […]

我能做些什么来解决这个问题?有任何想法吗?

+0

'natsort($ images)'' – apokryfos

回答

0

你可以先排序数组,然后你可以迭代它。使用sort()

$images = glob("/var/www/user/html/images/".$row['id']."@*.jpg"); 

sort($images,2); // 2 for sort as string 

foreach($images as $image) { 
    echo "<img src=\"".str_replace("/var/www/user/html/images/", "http://www.example.com/images/", $image)."\">\n"; 
}