Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá, boa noite.
Preciso ler todos os arquivos dentro de um diretório, retirar caracteres especiais, separar as strings e ordena-las em ordem alfabética.
Fiz o seguinte código:
$arq1 = "arq1.txt";
$arq2 = "arq2.txt";
$arq3 = "arq3.txt";
$arq4 = "arq4.txt";
$arq5 = "arq5.txt";
$array = array($arq1, $arq2, $arq3, $arq4, $arq5);
foreach($array as $name_file){
$file = fopen($name_file,"r");
if(!feof($file)){
$linha = fgets($file, 4096);
$caracteres = array(",",".",":",";","!","@","#","$","%","&","*","(",")","_","-","/","|","?","+","=","§","[","]","{","}");
$linha1 = str_replace($caracteres, "", $linha);
echo $linha1."<br>";
fclose($file);
}
$resp = explode(" ", $linha1);
}
sort($resp);
for($i = 0; $i < count($resp); $i++){
echo $resp[$i]."<br>";
}
A principio deu certo, porém ele só ordena o conteúdo do ultimo arquivo.
Também utilizei o exemplo do Hudson Pereira aki do Fórum
foreach( scandir( $caminho) as $row){
if( is_file($caminho.$row)){
$conteudos[] = file_get_contents($caminho . $row);
$caracteres = array(",",".",":",";","!","@","#","$","%","&","*","(",")","_","-","/","|","?","+","=","§","[","]","{","}","ç","~");
$content = str_replace($caracteres, "", $conteudos);
}
}
sort($content);
//imprime na ordem
foreach( $content as $conteudo){
echo $conteudo . '<br />';
}
Funciona porém quando uso a função explode() para separar as strings da o seguinte erro:
Warning: explode() expects parameter 2 to be string, array given in C:\wamp\www\BRI\1\abrir.php
Alguém poderia me ajudar? Não estou conseguindo resolver isso.
Carregando comentários...