Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Problemas com laço FOR...


Ewerton M.

Pergunta

Boa tarde galera...

Estou fazendo um trabalho para o meu curso que consiste em criar um laço de repetição que crie pastas e dentro dessa pasta crie determinada quantidade de arquivos... Porém, estou apanhando!!!

Consegui criar as pastas e consegui criar os arquivos dentro da 1º Pasta, porém, as demais, eu não consigo!!!

O que fazer???

Segue o código:

<?php
    $pasta= 1;
    $arquivo= 1;
    
    for($pasta;$pasta<=5;$pasta++){
            $dir= "Xel";
             mkdir ("C:/Temp/$dir" . $pasta, 0777 );
             echo "Pasta <b>$dir" . $pasta . "</b> criada com sucesso!!<br>";
        }
         
            for($arquivo;$arquivo<=5;$arquivo++){
                 $abrir = fopen("C:/Temp/$dir" . $pasta. "/" . $arquivo. ".txt", "a+");
                fwrite($abrir, "ESTUDANDO PHP...");
                fclose($abrir);
            }
        }
?>

Obrigado galera!!!

Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0

Fala Vini_loock

Então, corrigi esse erro, porém, a falha permanece...

Segue o código:

<?php
    $pasta= 1;
    $arquivo= 1;
    
    for($pasta;$pasta<=5;$pasta++){
            $dir= "Xel";
            mkdir ("C:/Temp/$dir" . $pasta, 0777 );
            echo "Pasta <b>$dir" . $pasta . "</b> criada com sucesso!!<br>";
        
            for($arquivo;$arquivo<=5;$arquivo++){
                $abrir = fopen("C:/Temp/$dir" . $pasta. "/" . $arquivo. ".txt", "a+");
                fwrite($abrir, "ESTUDANDO PHP...");
                fclose($abrir);
            }
        }
?>

Editado por Ewerton M.
Link para o comentário
Compartilhar em outros sites

  • 0

O que acontece exatamente?

Ele cria as 5 pastas, mas os arquivos ele cria apenas na primeira pasta?

Como hoje estou com um pouco de preguiça para analisar códigos, fiz um aqui que funcionou, tente montar o seu analisando esse aqui:

<?php
    $folderName = 'Pasta';
    
    for($i = 0; $i < 5; $i++){
        mkdir($folderName.$i, 0777);
        for($j = 0; $j < 5; $j++){
            $open = fopen($folderName.$i.'/'.'file'.$j.'.txt', "a+");
            fwrite($open, 'Estudando Php...');
            fclose($open);
        }
    }
?>

Editado por vini_loock
Link para o comentário
Compartilhar em outros sites

  • 0

Obrigado vini_loock, funcionou...

Só tirei as variáveis que estavam fora do laço e criei e inicializei elas direto no FOR, conforme seu exemplo...

Dai funcionou, vendo seu exemplo ficou claro. Na verdade ele estava criando os arquivos de 1 a 5, porém, como ele estava fora do laço ele não estava zerando o valor a cada nova pasta criada, ele assunia um valor fixo...

É a mesma coisa que um contador...

Obrigado pelo esclarecimento!!!

<?php
    for($pasta = 0;$pasta<=5;$pasta++){
            $dir= "Xel";
            mkdir ("C:/Temp/$dir" . $pasta, 0777 );
            echo "Pasta <b>$dir" . $pasta . "</b> criada com sucesso!!<br>";
        
        for($arquivo = 0;$arquivo<=5;$arquivo++){
                $abrir = fopen("C:/Temp/$dir" . $pasta. "/" . $arquivo. ".txt", "a+");
                fwrite($abrir, "ESTUDANDO PHP...");
                fclose($abrir);
        }
    }
?>

Editado por Ewerton M.
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,1k
×
×
  • Criar Novo...