我有这个网站:http://www.oemsynthetics.com/order.php
在底部你会看到产品图片。我做的是我在一个文件夹中有产品图片并使用php scadir()来保存他们的名字。在每个名字的开头我放了一个数字,这样我就可以对它进行排序例如,其中一个图像名称是1motor-oil.jpg。当我在localhost上使用sort函数时,它通常按数字排序并且运行良好。在网站服务器上虽然它根本没有排序。 我不知道为什么。有人可以帮帮我吗? 这是我使用的代码:
<?php
//By Product Part
$byProduct = "http://amsoil.com/shop/by-product/";
$byEquipment = "http://www.amsoil.com/shop/by-equipment/";
$dirEqui = "./assets/byEquipment";
$dirPr = "./assets/byProduct";
$imagesPr = scandir($dirPr,0);//save all the image names in alphabetical order(I used numbers for ordering in a way that I want)
$imagesEqui = scandir($dirEqui,0);//save all product images in alphabetical order by equipment
//i = 2 because the the first files in directory are . and ..
sort($imagesEqui, SORT_NATURAL | SORT_FLAG_CASE);//sort by equipment
sort($imagesPr, SORT_NATURAL | SORT_FLAG_CASE);//sort the array naturally
for ($i=2; $i < count($imagesPr); $i++) {
if(preg_match('/\.(jpg|png)/',$imagesPr[$i])){
//Delete .jpg from the file name
$product = $imagesPr[$i];
$product = preg_replace('/\.(jpg|png)/','',$product);
$product = preg_replace('/\d+/','',$product);
//Create links and pictures
echo "<a href='".$byProduct.$product."?zo=".ZO."'><img class='products' src='".$dirPr."/".$imagesPr[$i]."'></a>";
}else continue;
}
?>
提前感谢大家的帮助。