【问题标题】:unique file names in php from dir来自 dir 的 php 中的唯一文件名
【发布时间】:2013-10-21 13:31:30
【问题描述】:
 <?
    if ($directory = opendir('data/')) { // Open dir    
    while (false !== ($files = readdir($directory))) { //Read directory
        if ($files != "." && $files != "..") { //Strip . and ..
        $files = str_replace("122.","",$files); // Remove 122.
        $files = str_replace("234.","",$files); // Remove 234.
        echo "$files<br />"; // Get results
        }
      }
      closedir($directory); // close directory
    }

?>

目录中的文件为:122.256879、234.4263、122.4263、234.256879

我得到结果: 256879 4263 4263 256879

但我需要独特的结果: 256879 4263

如何得到这个结果?

【问题讨论】:

  • 添加到数组中,然后就可以排序了。
  • 如何添加到数组中?
  • 我已经发布了答案。请看一下

标签: php sorting readdir opendir


【解决方案1】:
<?
    $aFiles = array();
    if ($directory = opendir('data/')) { // Open dir    
    while (false !== ($files = readdir($directory))) { //Read directory
        if ($files != "." && $files != "..") { //Strip . and ..
        $files = str_replace("122.","",$files); // Remove 122
        $files = str_replace("234.","",$files); // Remove 234

        if(in_array($files, $aFiles) == false){
            echo "$files<br />"; // Get results
            $aFiles[] = $files;
         }
        }
      }
      closedir($directory); // close directory
    }

?>

【讨论】:

  • 这里是一样的吗? $aFiles[] = $files; echo "$files
    "; // 获取结果
  • 是的。您可以遍历数组并回显。 foreach($aFiles as $files){ echo $files . '
    '; }
  • 但是当我添加到 html ... 显示所有文件
  • 然后你可以做 echo implode(' ', $aFiles);
  • 没关系,第一种方法效果很好。我同样犯了拼写错误。对不起。
猜你喜欢
  • 2010-10-02
  • 1970-01-01
  • 1970-01-01
  • 2012-01-23
  • 2011-12-07
  • 1970-01-01
  • 2023-03-17
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多