我試圖讓我的圖像幻燈片的數量與以下,以顯示:圖像排序按編號在PHP
$image=array();
$img_folder = $params->get('path');
mt_srand((double)microtime()*1000);
if(is_dir($img_folder)){
krsort($file);
$imgs = dir($img_folder);
while ($file = $imgs->read()) {
if ((eregi("gif", $file) || eregi("jpg", $file) || eregi("png", $file)))
$image[] = "$file";
} closedir($imgs->handle);
print_r($image);
return $image;
}
然而,陣列的作品,但順序關閉:
陣列([0] => Slide1.png [1] => Slide10.png [2] => Slide11.png [3] => Slide12.png [4] => Slide13.png [5] => Slide14.png [ 6] => Slide15.png [7] => Slide16.png [8] => Slide17.png [9] => Slide18.png [10] => Slide19.png [11] => Slide2.png [12] => Slide20.png [13] => Slide21.png [14] => Slide22.png [15] => Slide23.png [16] => Slide24.png [17] => Slide25.png [18] => Slide26.png [19] => Slide27.png [20] => Slide28.png [21] => Slide29.png [22] => Slide3.png [23] => Slide30.png [24] => Slide31.png [25] => Slide4.png [26] => Slide5.png [27] => Slide6.png [28] => Slide7.png [29] => Slide8.png [30] => Slide9.png)
如果我把natsort($image);
$image[] = "$file";
後的順序是正確的,但在陣列關閉時:
Array([0] => Slide1.png [11] => Slide2.png [22] => Slide3.png [25] => Slide4.png [26] => Slide5.png [27] => Slide6 .png [28] => Slide7.png [29] => Slide8.png [30] => Slide9.png [1] => Slide10.png [2] => Slide11.png [3] => Slide12.png [4] => Slide13.png [5] => Slide14.png [6] => Slide15.png [7] => Slide16.png [8] => Slide17.png [9] => Slide18.png [10 ] => Slide19.png [12] => Slide20.png [13] => Slide21.png [14] => Slide22.png [15] => Slide23.png [16] => Slide24.png [17] => Slide25.png [18] => Slide26.png [19] => Slide27.png [20] => Slide28.png [21] => Slide29.png [23] => Slide30.png [24] => Slide31.png) 我需要他們訂購Slide1 - Slide30,不像上面列出的那樣。我可以將數字(Slide1)的名稱更改爲字母(SlideA),但希望保留此命名約定。有沒有辦法做到這一點,而不更改圖像名稱?
此圖像幻燈片是「如何」幻燈片放映。
'eregi'在php7中被刪除。 – Daan
嘗試使用natsort() –
我們現在使用的PHP版本5.4.14,因爲Joomla 3.4不支持PHP 7在這個版本的Joomla @ MuhammedM.-我試過了,它的工作,但它不工作 –