利用PHP函数显示远程主机文件目录(FTP文件目录)

三月 29
磊子 2012年 4 条评论

这些天由于项目需要,要把远程的主机文件目录即FTP里面的文件目录显示出来。网上找了好多都没有一个理想的方法,所有自己尝试写了一段代码。今儿赶紧把它拿上来,做下总结。

主要使用了PHP里面的FTP函数。首先需要进行FTP连接,如下代码:

/**
* 初始化FTP连接
* $ftp_ip FTP地址或者IP 
* $ftp_user FTP用户名
* $ftp_passwd FTP密码
*/
$conn = ftp_connect($ftp_ip) or die("FTP链接失败\n");
$FtpLogin = ftp_login($conn,$ftp_user,$ftp_passwd);
if($FtpLogin)
{
    $files = ftp_nlist($conn,'.');
}

链接成功后,利用ftp_nlist函数首先将FTP中的文件根目录显示出来

<?php

foreach($files as $k => $file)    //根目录
{
  $thisFile = basename($file);
  if($thisFile != '.' && $thisFile != '..')
  {
	$dr1 = substr($thisFile,0,1);
	$loc = strpos($thisFile,'.');
	if(empty($loc) && $dr1 != '.' )
	{
          $newdir = ftp_nlist($conn, './'.$file);
	  echo $thisFile;
          if(!empty($newdir))
          {
            foreach($newdir as $key=>$vol)    //二级目录
            {
    		$thisFile2 = basename($vol);
    		if($thisFile2 != '.' && $thisFile2 != '..')
    		{
                   $dir2 = substr($thisFile2,0,1);
    		   $loc2 = strpos($thisFile2,'.');
    		  if(empty($loc2) && $dir2 != '.' )
    		  {
    			 echo $thisFile2;
    			 $newdir2 = ftp_nlist($conn, './'.$vol);
                         if(!empty($newdir2))
                         {
                             foreach($newdir2 as $key2=>$vol2)    //三级目录
        		     {
        			$thisFile3 = basename($vol2);
        			if($thisFile3 != '.' && $thisFile3 != '..')
        			{
        			  $dir3 = substr($thisFile3,0,1);
        		          $loc3 = strpos($thisFile3,'.');
        			  if(empty($loc3) && $dir3 != '.' )
        			  {
        			     echo $thisFile3;
        			  }
        			}}}}}
    			}
            }
		}
  }
}
ftp_close($conn);
?>

这样一个简单的远程FTP文件目录显示就完成了,不过里面只是显示了三级目录,感兴趣的朋友可以拓展一下,利用递归或其他方法来全部显示或者控制显示的文件目录级数。方法很简单,熟悉PHP一看就明白。有什么好的建议的,希望大家多多提出!

» 版权所有©转载必须以链接形式注明作者和原始出处:磊子的博客 » 利用PHP函数显示远程主机文件目录(FTP文件目录)
» 地址:( Ctrl+C 复制 )
» 如果对本站感兴趣,请到网站右下方订阅本站,将为你带来更多精彩和实用的文章
» 如果您对这篇文章感兴趣,不妨小小的 捐助(Donate)一下博主吧,不管多少都是对博主最大的支持和鼓励哟,博主-磊子感谢大家的支持!!!

4 条留言 其中:访客:3 条, 博主:1 条

  1. 母婴B2b说:

    博主66666666 :twisted:

  2. choovin说:

    过来学习了

  3. 交换友情链接么?

    • 磊子说:

      可以的! 请到友情链接页面下留下言吧! 呵呵! 我的是友链关键词是: WordPress主题制作

说点什么吧




wireless earbuds moscow mule mugs bluetooth speakers waterproof camera best wireless earbuds best vacuum cleaner best drugstore foundation best dishwasher best waist trainer wireless headphones best vacuum 0594918 best bluetooth earbuds waterproof bluetooth speaker tattoo cover up action camera
订阅本站