Boa tarde, nesta parte do tutorial iremos ver a leitura
de arquivos (exemplo.txt) em forma de array
estruturada, isto é, iremos ler um arquivo txt em forma de array
multidimensional. Para melhor entender vamos a pratica.
Para alcançar o nosso objectivo iremos usar a função file() e a função explode()
para criar um array para cada elemento do array principal. O ficheiro
exemplo.txt ira conter uma lista de nomes (nome completo, um para cada linha) com
a seguinte estrutura: Apelido, outros nomes
Crie um projecto “filemanager3” com uma pasta “files” dentro dele e um arquivo “filemanager3.php”. Na pasta “files”
adicione o arquivo exemplo.txt com o seguinte texto:
Apelido1, primeiroNome1 segundoNome1
Apelido2, primeiroNome2 segundoNome2
Adicione o seguinte código ao arquivo filemanager3.php :
<?php
$path =
dirname(__FILE__);
$file =
$path.'/files/exemplo.txt';
$content = '';
if (file_exists($file)
&& is_readable($file)) {
$lista
= file($file);
for ($i = 0; $i < count($lista);
$i++) {
// separa cada elemento e
guarda em um array temporario
$tmp = explode(', ',
$lista[$i]);
// atribui cada elemento do
array temporario ao novo array
$lista[$i] = array('apelido'
=> $tmp[0], 'outrosnomes' => rtrim($tmp[1])); //rtrim para evitar que
crie um espaco depois do enter no texto
$content = $lista;
}
}
else
{
$content = 'O ficheiro solicitado nao
foi encontrado ou esta protegido';
}
?>
<html>
<head>
<title>file</title>
</head>
<body>
<p><b><?php
print_r($content);?></b></p>
</body>
</html>
A funcao explode() serve para dividir uma string e criar
um array com as partes.
$tmp
= explode(', ', $lista[$i]); - divide
a string $lista sempre que encontrar uma virgula, isto é, a virgula é o ponto de
divisão.
Como pode ver no texto do arquivo exemplo.txt, temos apelido seguido
de uma virgula e depois os outros nomes
Em caso de duvida deixe um comentário.
Faca download do projecto aqui
Parte 2 Parte4
0 comentários:
Enviar um comentário