PHP目录和文件的问题

danqe 2008-09-08 05:45:09
  任务目标:按创建时间列出指定目录里的子目录和文件名。子目录有n个,不同类型的文件有m个。
 
  请将代码和讲解一同粘出来,如果讲解明了,代码可用,则赠分100。

  抢分了!!!!!!!
...全文
278 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
danqe 2008-09-12
  • 打赏
  • 举报
回复


我是楼主


3楼PHP_APTX_4869 的代码我没看明白,因为我太菜了。接触PHP时间太短了,才四天。不过非常感谢你。给你50分,觉得少的话以后回我再给你加。
海诗美妆 2008-09-10
  • 打赏
  • 举报
回复
明抢?
axolo 2008-09-09
  • 打赏
  • 举报
回复
历遍一下就可以了
感觉是作业题
没多大的技术含量
程序猿之殇 2008-09-09
  • 打赏
  • 举报
回复
感觉你可能走进了一个误区。
其实你完全可以将文章对应的静态文件信息保存在数据库内。

这样更用利于控制。
而且也直接避免了去遍历目录。
danqe 2008-09-09
  • 打赏
  • 举报
回复
非常非常感谢2-3楼!
并且向4-9楼说明一下情况:我是一个生手,以前学过VB,后来看过Java。这次单位给任务让建一个网站,目标是实现文件的一人上传多人浏览指定用户回复。对于生手来说,这个任务重了点。我已经干了半个月了,把数据库部分才搞定。到了文件处理部分找不来资料了。我的思路是,游客可以浏览任何文章,但不能发布文章。登录用户可以发表文章,文章分16类,分别放到16个文件夹里。在首页有16个栏目,分别对应显示那16个文件夹里的文件名供点击浏览。
浏览时登录用户可以回复。
用PHP也是我瞎打误撞的结果,我对它并不熟。但我想,编程语言嘛,他们之间只是个别语法规则不同,大部分都一样。听说PHP比Java的兼容性更好,而且资料说多么多么容易学,就用了。呵呵。

如果觉得分数不够,只要你帮我解决问题了,我再发贴,只要你回贴我就给分。要多少给多少。两次不够三次,十次也行啊。

最终目标有二,一是把网站建起来,二是我能够真正掌握这个技术。

谢谢各位。
程序猿之殇 2008-09-09
  • 打赏
  • 举报
回复
结合手册自己做吧。
其实就是在目录遍历,将相关信息保存在一个多维数组里。
没有什么难度。
剑心永远OK 2008-09-09
  • 打赏
  • 举报
回复
搞到我们好像很缺分。。汗。。
songzairan 2008-09-09
  • 打赏
  • 举报
回复
帮顶
jiayuxi 2008-09-09
  • 打赏
  • 举报
回复
上面的写的可以用啦
justicesun 2008-09-09
  • 打赏
  • 举报
回复
php还有人教? 还留作业? 用不用判分啊...呵呵
jlokys 2008-09-09
  • 打赏
  • 举报
回复
function getFolder($dir){
if(!is_dir($dir)) return $dir;
foreach(glob($dir."*") as $value){
$array[filectime($value)] = $value;
}
ksort($array);
return $array;
}

$array = getFolder($dir);
foreach($array as $key=>$value){
echo $key."=>".$value."<br>";
}
crazymkj 2008-09-09
  • 打赏
  • 举报
回复
filectime + dir类
其他自己想吧。。。
  • 打赏
  • 举报
回复
直接用个现成的CMS吧!
ruanchao 2008-09-08
  • 打赏
  • 举报
回复
自己要想一想怎么做,理顺一个思路,然后找资料去实现!

你这样子问问题,相当于让别人给你做作业了!

冒昧说了一些不好的话,请理解!
iasky 2008-09-08
  • 打赏
  • 举报
回复
楼主在做作业么?

这样问问题不好!
PHP_APTX_4869 2008-09-08
  • 打赏
  • 举报
回复

function cmptime($a,$b)
{
$atime = filectime($a);
$btime = filectime($b);

if ($atime == $btime)
{
return 0;
}
return ($atime < $btime) ? -1 : 1;
}
for ($k = 0; $k < 2; $k++)
{
$d = dir("./");
$listing = array();
while ($entry = $d->read())
array_push($listing, $entry);
if ($type == "time") //排列参数
{
usort($listing, "cmptime");
}
for($i=0;$i<count($listing);$i++)
{
if ($listing[$i] != "." && $listing[$i] != ".." && ($k==0 && is_dir($listing[$i])))
{
echo $listing[$i]."<br />";
}else if ($listing[$i] != "." && $listing[$i] != ".." && ($k==1 && !is_dir($listing[$i])))
{
echo $listing[$i]."<br />";
}
}
}
fxs_2008 2008-09-08
  • 打赏
  • 举报
回复
http://topic.csdn.net/u/20071225/11/e6a8db84-df02-4622-987b-2a4ed4a5eef0.html

参考一下吧


首先取得文件名和路径
根据文件名取得日期

或者遍历时判断一下文件日期,如果为真就写入数组
自已写写吧
ten789 2008-09-08
  • 打赏
  • 举报
回复
手里没有历边目录的代码 呵呵 专门写个100分不够

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧