仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 2436|回复: 20
打印 上一主题 下一主题

[学习教程] PHP教程之树型布局列出指定目次里一切文件的PHP类...

[复制链接]
冷月葬花魂 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-2-4 00:07:43 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
PHP的理解是新手最难迈过的一道门槛,不过你应该感到幸运的是PHP已经最大极限的为了新手而努力了,如果你学过其他的语言,也许会觉得PHP的确相当的简单,但是如果你之前什么都没学过,那么阿弥陀佛,硬着头皮琢磨吧。   <?
//以树型布局列出指定目次里的一切文件,假如你想晓得本人某个目次里有哪些子目次和文件,可以挪用这个类来检查,很便利的。

    # 演示的例子:
    $t = new TreeClimber( "asp" ); //新建物件,设置需求列出的目次:在此为asp目次
    echo arrayValuesToString( $t->getFileList( $t->getPath() ), "<BR>\n" );
   
    function arrayValuesToString( $ar, $nl="", $dolast=true ) {//挪用函数
    $str = "";
    reset( $ar );
    $size = sizeof( $ar );
    $i = 1;
    while( list( $k, $v ) = each( $ar ) ) {
    if ( $dolast == false ) {
    if ( $i < $size ) {
        $str .= $ar[$k].$nl;
    }
    else {
        $str .= $ar[$k];
    }
    }
    else {
    $str .= $ar[$k].$nl;
    }
    $i++;
    }
    return $str;
    }
    ?>
    <?
    //以下为类文件
    class TreeClimber {
    var $path;
    var $fileList = array();
    function TreeClimber( $path = "." ) {
    $this->path = $path;
    }
   
    # 存取途径
    function getPath() { return $this->path; }
    function setPath( $v ) { $this->path = $v; }
   
    // 前往指定目次里的文件列表,假如没有指定目次,将利用以后目次
    //假如不克不及翻开目次(能够没权限或目次不存在,将前往为空
    //以递归体例停止
     function getFileList( $dirname=null, $returnDirs=false, $reset=true ) {
    if ( $dirname == null ) { $dirname = $this->path; }
    # else { $this->setPath( $dirname ); }
    # dout( "Recursing into $dirname..." );
    if ( $reset ) {  
    $this->fileList = array();
    }
    $dir = opendir( $dirname );
    if ( ! $dir ) {  
    print( "<B><FONT COLOR=#FF0000>注重: TreeClimber.getFileList( $dirname ): 不克不及翻开 $dirname!</FONT></B>" );
    return null;  
    }
    while( $file = readdir( $dir ) ) {
    if ( ereg( "^\.$", $file ) || ereg( "^\.\.$", $file ) ) continue;
    if ( is_dir( $dirname."/".$file ) ) {
    $this->getFileList( $dirname."/".$file, $returnDirs, false );
    if ( $returnDirs ) { $this->fileList[] = $dirname."/".$file;}
    }
    else { $this->fileList[] = $dirname."/".$file; }
    }
    sort( $this->fileList );
    return $this->fileList;
    }
    } //至此类停止
    ?>
到现在,对排版还是不很熟练,经常会排不好。
莫相离 该用户已被删除
沙发
发表于 2015-2-4 09:07:35 | 只看该作者
使用 jquery 等js框架的时候,要随时注意浏览器的更新情况,不然很容易发生框架不能使用。
海妖 该用户已被删除
板凳
发表于 2015-2-5 03:50:39 | 只看该作者
再就是混迹于论坛啦,咱们的phpchina的论坛就很强大,提出的问题一般都是有达人去解答的,以前的帖子也要多看看也能学到不少前辈们的经验。别的不错的论坛例如php100,javaeye也是很不错的。
若相依 该用户已被删除
地板
发表于 2015-2-9 16:50:43 | 只看该作者
本文当是我的笔记啦,遇到的问题随时填充
小女巫 该用户已被删除
5#
发表于 2015-2-10 22:53:47 | 只看该作者
实践是检验自己会不会的真理。
再现理想 该用户已被删除
6#
发表于 2015-2-16 09:36:44 | 只看该作者
实践是检验自己会不会的真理。
变相怪杰 该用户已被删除
7#
发表于 2015-2-18 19:33:46 | 只看该作者
要进行开发,搭建环境是首先需要做的事,windows下面我习惯把环境那个安装在C盘下面,因为我配的环境经常出现诡异事件,什么事都没做环境有的时候就不能用啦。
活着的死人 该用户已被删除
8#
发表于 2015-3-6 06:30:07 | 只看该作者
因为blog这样的可以让你接触更多要学的知识,可以接触用到类,模板,js ,ajax
金色的骷髅 该用户已被删除
9#
发表于 2015-3-12 21:28:19 | 只看该作者
做为1门年轻的语言,php一直很努力。
精灵巫婆 该用户已被删除
10#
发表于 2015-3-13 05:09:49 | 只看该作者
首先声明:我是一个菜鸟,是一个初学者。学习了一段php后总是感觉自己没有提高,无奈。经过反思我认为我学习过程中存在很多问题,我改变了学习方法后自我感觉有了明显的进步。
简单生活 该用户已被删除
11#
发表于 2015-3-20 13:33:12 | 只看该作者
php里的数组为空的时候是不能拿来遍历的;(这个有点低级啊,不过我刚被这个边界问题墨迹了好长一会)
兰色精灵 该用户已被删除
12#
发表于 2015-3-22 18:42:52 | 只看该作者
多看优秀程序员编写的代码,仔细理解他们解决问题的方法,对自身有很大的帮助。
若天明 该用户已被删除
13#
发表于 2015-4-18 09:05:48 | 只看该作者
遇到出错的时候,我经常把错误信息直接复制到 google的搜索栏,一般情况都是能搜到结果的,不过有时候会搜出来一大片英文的出来,这时候就得过滤一下,吧中文的弄出来,挨着式方法。
柔情似水 该用户已被删除
14#
发表于 2015-4-19 10:38:32 | 只看该作者
php里的数组为空的时候是不能拿来遍历的;(这个有点低级啊,不过我刚被这个边界问题墨迹了好长一会)
飘灵儿 该用户已被删除
15#
发表于 2015-4-20 11:29:27 | 只看该作者
多看优秀程序员编写的代码,仔细理解他们解决问题的方法,对自身有很大的帮助。
冷月葬花魂 该用户已被删除
16#
 楼主| 发表于 2015-5-7 21:45:09 | 只看该作者
对于初学者来说不推荐去拿钱买的。当然如果一个网站你经常去用,而且里面的资料也比较有用,最好还是买个会员比较好,毕竟那些也是别人的工作成果。
再见西城 该用户已被删除
17#
发表于 2015-5-10 00:15:43 | 只看该作者
如果你已经到这种程度了,那么你已经可以做我的老师了。其实php也分很多的区域,
只想知道 该用户已被删除
18#
发表于 2015-6-5 09:07:43 | 只看该作者
爱上php,他也会爱上你。
19#
发表于 2015-6-11 13:38:46 | 只看该作者
首先我是坚决反对新手上来就用框架的,因为对底层的东西一点都不了解,造成知识上的真空,会对以后的发展不利。我的观点上手了解下框架就好,代码还是手写。当然啦如果是位别的编程语言的高手的话,这个就另当别论啦。
山那边是海 该用户已被删除
20#
发表于 2015-7-7 17:50:05 | 只看该作者
个人呢觉得,配wamp 最容易漏的一步就是忘了把$PHP$目录下的libmysql.dll拷贝到windows系统目录的system32目录下,还有重启apache。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-5-2 06:26

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表