-1

foreach 関数が期待どおりに機能しません。

<?php

$folders = scandir('../Users/');  
foreach($folders as $item):
    if ((substr($item, 0, 1) == '.') || (preg_match("/\.php$/", $item)))
          continue;

     if (is_dir("../Users/$item"))
          $target_folders = @scandir("../Users/$item/processed/");
     foreach($target_folders as $target_item){

         if ((!preg_match("/^[.]/",$target_item))
           || (!is_dir("../Users/$item/processed/$target_item"))){
          if ((substr($target_item, 0, 1) == '.'))
             continue;      
          }
      }
      $srcfile= ("../Users/$item/processed/".$target_item);
      $dstfile= ("processed/".$target_item);
      copy($srcfile, $dstfile);
      unlink($srcfile);
endforeach;
array_map('unlink', glob("processed/*.zip"));
?>

正直なところ、複製が正常に実行されているため、何が問題なのかわかりません。現在、すべてのファイルを移動するのではなく、1 つのファイルのみを移動しています。私が言ったように、その複製は問題なく機能します。それを投稿したい場合はお知らせください。

4

1 に答える 1