Aller au contenu principal
loading

Script de detection BOM

POSTÉ DANS PHP TAGS PHP AUTEUR herve COMMENTAIRES 5

Voici un script PHP qui permet de rechercher un caractère BOM (marque d’ordre des octets : cf: wikipedia) au sein de plusieurs fichiers « .php », « .html » et « .ini » contenus dans la WEB_ROOT.

<?php

$extensions_allowed = array();
$extensions_allowed [] = 'php';
$extensions_allowed [] = 'html';
$extensions_allowed [] = 'ini';

function listeFichiers($dir){
  global $extensions_allowed;
  if ($handle = opendir($dir)) {
    /* Ceci est la façon correcte de traverser un dossier. */
    while (false !== ($file = readdir($handle))) {
      if (($file <>'.') && ($file<>'..')) {
        if (is_file($dir.'/'.$file)){
          $extension = pathinfo($dir.'/'.$file, PATHINFO_EXTENSION);
          if (in_array($extension,$extensions_allowed)){
            $fileHandle = fopen($dir.'/'.$file, "r");
            $intro = fread($fileHandle, 3);
            fclose($fileHandle);
            if ($intro == "\xEF\xBB\xBF"){
              echo "$dir/$file\n";
              flush();
            }
          }
      } else {
        if (is_dir($dir.'/'.$file)){
          listeFichiers($dir.'/'.$file);
        }
      }
    }
   }
   closedir($handle);
  }
}

header("Content-type: text/plain\n\n");

set_time_limit(3600);

$path = $_SERVER['DOCUMENT_ROOT'];

if (substr($path,-1)=='/'){
  $path =  substr($path,0,-1);
}

listeFichiers($path);
?>

Source : http://libre-d-esprit.thinking-days.net/2009/03/et-bom-le-script/



5 commentaire

Derniers articles

DDEV : obtenir la liste des services
DDEV : obtenir la liste des services Posté le 27 janvier 2021
Partager un répertoire local sous Docker
Partager un répertoire local sous Docker Posté le 27 janvier 2021
Docker et Localhost Mac
Docker et Localhost Mac Posté le 27 janvier 2021
Affichage de la requête SQL d'un db_select
Affichage de la requête SQL d'un db_select Posté le 24 septembre 2020

A propos de Web'Up