File "extraction_nom_ficiher_ftp_raw06.php"
Full Path: /home/analogde/www/FTP/Monsta-FTP-master/extraction_nom_ficiher_ftp_raw06.php
File size: 4.9 KB
MIME-type: text/x-php
Charset: utf-8
<?php
/*********************************************************************/
$contenu_fichier = lire_liste_fichiers("xyz_liste_fichiers.txt");
echo "------------- ETAPE 1 : Lecture du fichier - scan extraction ---------------" ."<br>";
echo "<pre>";
print_r($contenu_fichier);
echo "<pre>";
echo "------------- ETAPE 2 : Differents filtrage--------------------" ."<br>";
$tableau_fichiers_filtrage = [];
$tableau_fichiers_filtrage = filtrage($contenu_fichier);
echo "<pre>";
var_dump($tableau_fichiers_filtrage);
echo "</pre>";
// echo "------------- ETAPE 3 --------------------" ."<br>";
/*
$fichiers_uniquement = filtrage_protection($tableau_nom_fichier);
echo "<pre>";
print_r($fichiers_uniquement);
echo "<pre>";
*/
echo "------------- ETAPE 3 : Double ??? --------------------" ."<br>";
$insere_fichier = "map.png";
if(fichier_exists($tableau_fichiers_filtrage, $insere_fichier) )
//if(fichier_exists($fichiers_uniquement, $insere_fichier) )
{
echo "Alert : " .$insere_fichier ."<br>";
}
echo "------------- END --------------------" ."<br>";
/************************************************************/
function filtrage($contenu_fichier)
{
$tableau_filtrage = [];
// dans un premier temps, on va enlever les chaines qui correspondent à un folder
// car ne contient pas d'extension .xxx
for($i = 0 ; $i < count($contenu_fichier); $i++)
{
$parts = preg_split('/\s+/', $contenu_fichier[$i]);
if (strpos(end($parts), ".") !== false)
{
$tableau_filtrage[] = end($parts);
}
}
// puis on se charge des éléments "." et ".."
// Utilisation de array_filter pour supprimer "." et ".."
/*
$tableau_filtrage = array_filter($tableau_filtrage, function($value)
{
return $value !== "." && $value !== "..";
});
// Réindexation du tableau pour éviter les clés manquantes
$tableau_filtrage = array_values($tableau_filtrage);
return $tableau_filtrage;
*/
// maintenant on s'occupe des elements suivants
$array = array(".", "..", "css_style.css", "index.html");
for($i = 0 ; $i < count($tableau_filtrage); $i++)
{
$key = array_search($array[$i], $tableau_filtrage);
if ($key !== false)
{
unset($tableau_filtrage[$key]);
}
}
$tableau_filtrage = array_values($tableau_filtrage);
return $tableau_filtrage;
}
/************************************************************/
/*
function filtrage_no_repertoire($contenu_fichier)
{
$tableau_filtrage = [];
for($i = 0 ; $i < count($contenu_fichier); $i++)
{
$parts = preg_split('/\s+/', $contenu_fichier[$i]);
if (strpos(end($parts), ".") !== false)
{
$tableau_filtrage[] = end($parts);
}
}
return $tableau_filtrage;
}
*/
/************************************************************/
/*
function filtrage_protection($tableau_nom_fichier)
{
$array = array(".", "..", "css_style.css", "index.html");
for($i = 0 ; $i < count($tableau_nom_fichier); $i++)
{
$key = array_search($array[$i], $tableau_nom_fichier);
if ($key !== false)
{
unset($tableau_nom_fichier[$key]);
}
}
// re_indexation
$tableau_nom_fichier = array_values($tableau_nom_fichier);
return $tableau_nom_fichier;
}
*/
/************************************************************/
function fichier_exists($tableau_nom_fichier, $insere_fichier)
{
$detected = 0;
for($i = 0 ; $i < count($tableau_nom_fichier); $i++)
{
if( $tableau_nom_fichier[$i] === $insere_fichier )
{
$detected = 1;
break;
}
}
return $detected;
}
/************************************************************/
/*
function remove_folder_element($tableau_nom_fichier)
{
$table_filtre = [];
for($i = 0 ; $i < count($tableau_nom_fichier); $i++)
{
if ($tableau_nom_fichier[$i] !== "." && $tableau_nom_fichier[$i] !== "..")
{
$table_filtre[] = $tableau_nom_fichier[$i];
}
}
return $table_filtre;
}
*/
/************************************************************/
function lire_liste_fichiers($nom_fichier)
{
// Ouvrir le fichier en mode lecture
$file = fopen($nom_fichier, 'r');
if ($file)
{
$lines = [];
// Lire chaque ligne du fichier
while (($line = fgets($file)) !== false)
{
// Supprimer les caractères de nouvelle ligne à la fin de chaque ligne
$lines[] = rtrim($line);
}
fclose($file);
return($lines);
}
else
{
echo "Impossible d'ouvrir le fichier.";
}
}
/************************************************************/
?>