我制作了这个小脚本,从目录中提取照片的名称。
<?php
$dirname = "newspaper_articles/nameofperson/1951-1977/";
$articlepath = glob($dirname."*.jpg");
foreach ($articlepath as $article) {
echo basename($article,".jpg").'<br>';
}
?>
目录中的照片命名如下;
1 articletitle.jpg
2 articletitle.jpg
11 articletitle.jpg
12 articletitle.jpg
21 articletitle.jpg
22 articletitle.jpg
(注意序列。我希望php在页面上显示它)
然而我的代码却像这样呈现;
1 articletitle.jpg
11 articletitle.jpg
12 articletitle.jpg
2 articletitle.jpg
21 articletitle.jpg
22 articletitle.jpg
我从PHP手册中了解到我应该使用natsort。我是这样做的:
foreach ($articlepath as natsort($article))
我收到错误(警告:natsort()期望参数1为数组) 你怎么看待为什么这不起作用
答案 0 :(得分:0)
如果$articlepath
是数组,请执行以下操作:
natsort($articlepath)
foreach ($articlepath as $article) {
您的问题是您尝试对表示为字符串的数组的单个元素进行排序,但natsort
仅适用于数组。
答案 1 :(得分:0)
您确定要对数组的每个元素执行natsort吗?
你的意思是:
natsort($articlepath)
foreach ($articlepath as $article)