- Entrou
- Jan 19, 2008
- Mensagens
- 24
- Gostos Recebidos
- 0
Boas a todos.
Sou iniciante no php, estou a desenvolver uma aplicação web e estou a precisar de uma ajuda.
Então é o seguinte:
Pretendo um script php que leia todo o conteudo de uma pasta e subpastas.
o resultado apresentado é o caminho desses ficheiros/pastas como vou demonstrar com o codigo 1.
Codigo 1
<?php
$dir = "directorio a apresentar";
function tree($it){
echo '<ul>';
for(; $it->valid(); $it->next()){
if($it->isDir() && !$it->isDot()) {
printf('<li class="dir">%s</li>', $it->current());
if($it->hasChildren()) {
$bleh = $it->getChildren();
echo '<ul>' . tree($bleh) . '</ul>';
}
}
elseif($it->isFile()) {
echo '<li class="file">'. $it->current() . '</li>';
}
}
echo '</ul>';
}
tree(new RecursiveDirectoryIterator($dir));
?>
Agora o que pretendo é que este resultado seja enviado para um ficheiro xml. como apresento no codigo 2
codigo 2
<?php
$dir = "directorio a apresentar";
$dados = "";
if (is_dir($dir)) {
$arquivo = "directorios.xml";
$point = fopen($arquivo, "w");
fwrite($point, "<?xml version='1.0' encoding='utf-8'?>");
fwrite($point, "<dados>");
if ($dh = opendir($dir)) {
while (($file = readdir($dh)) !== false) {
if($file{0}!="."){
$dados .= "<file file='$file' />";
}
}
closedir($dh);
}
fwrite($point, $dados);
fwrite($point, "</dados>");
fclose($point);
}
?>
espero que me tenha feito entender.
Agradeço a vossa ajuda.
Cumps...
Perocha2003
Sou iniciante no php, estou a desenvolver uma aplicação web e estou a precisar de uma ajuda.
Então é o seguinte:
Pretendo um script php que leia todo o conteudo de uma pasta e subpastas.
o resultado apresentado é o caminho desses ficheiros/pastas como vou demonstrar com o codigo 1.
Codigo 1
<?php
$dir = "directorio a apresentar";
function tree($it){
echo '<ul>';
for(; $it->valid(); $it->next()){
if($it->isDir() && !$it->isDot()) {
printf('<li class="dir">%s</li>', $it->current());
if($it->hasChildren()) {
$bleh = $it->getChildren();
echo '<ul>' . tree($bleh) . '</ul>';
}
}
elseif($it->isFile()) {
echo '<li class="file">'. $it->current() . '</li>';
}
}
echo '</ul>';
}
tree(new RecursiveDirectoryIterator($dir));
?>
Agora o que pretendo é que este resultado seja enviado para um ficheiro xml. como apresento no codigo 2
codigo 2
<?php
$dir = "directorio a apresentar";
$dados = "";
if (is_dir($dir)) {
$arquivo = "directorios.xml";
$point = fopen($arquivo, "w");
fwrite($point, "<?xml version='1.0' encoding='utf-8'?>");
fwrite($point, "<dados>");
if ($dh = opendir($dir)) {
while (($file = readdir($dh)) !== false) {
if($file{0}!="."){
$dados .= "<file file='$file' />";
}
}
closedir($dh);
}
fwrite($point, $dados);
fwrite($point, "</dados>");
fclose($point);
}
?>
espero que me tenha feito entender.
Agradeço a vossa ajuda.
Cumps...
Perocha2003