Afficher le code source d'un fichier PHP

Le script ci-dessous retourne le code source d'un fichier PHP.

Il remplace directement les caractères spéciaux (avec le code de Perrich, le texte ne s'affiche pas car il contient toujours des caractères spéciaux).

Ce script retourne aussi des erreurs si le fichier n'existe pas, ou si les permissions ne sont pas correctes.


Information sur les mises à jour

Dernière mise à jour :

06 Fév 2026
fonctionnement du code vérifié

135  vues
Compatibilité du code
PHP 5, PHP 7 et PHP 8
  code classé dans   Fichiers-répertoires
  code source classé dans   Fichiers-répertoires
 
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
                    
<?php
/*------------------------------*/
/*
Titre : Afficher le code source d'un fichier PHP

Auteur : KOogar
Date édition : 06 Fev 2026
Date mise a jour : 06 Fev 2026

Rapport de la maj:
- fonctionnement du code vérifié
*/
/*------------------------------*/

function display_source($file)
{
if(!file_exists($file))
{
$error = "FATAL Error: The file $file doesn't exists.";
echo $error;
}
else
{
$error = "permission_denied";
$fp = fopen("$file","r");
if(!$fp)
{
$error = "FATAL Error: The permissions of the file $file";
$error .= " are not good. PHP can't read the file.";
echo $error;
}
else
{ $lignes = '';
while(!feof($fp))
{
$lignes .= fgets($fp, 4096);
$lignes = preg_replace("#<#","<",$lignes);
$lignes = preg_replace("#>#",">",$lignes);
}
$lignes = preg_replace("#\n#","<br />",$lignes);
echo "$lignes";
}
}
}

?>
<?php
/*------------------------------*/
/*
Titre : Afficher le code source d'un fichier PHP

Auteur : KOogar
Date édition : 06 Fev 2026
Date mise a jour : 06 Fev 2026

Rapport de la maj:
- fonctionnement du code vérifié
*/
/*------------------------------*/

function display_source($file)
{
if(!file_exists($file))
{
$error = "FATAL Error: The file $file doesn't exists.";
echo $error;
}
else
{
$error = "permission_denied";
$fp = fopen("$file","r");
if(!$fp)
{
$error = "FATAL Error: The permissions of the file $file";
$error .= " are not good. PHP can't read the file.";
echo $error;
}
else
{ $lignes = '';
while(!feof($fp))
{
$lignes .= fgets($fp, 4096);
$lignes = preg_replace("#<#","<",$lignes);
$lignes = preg_replace("#>#",">",$lignes);
}
$lignes = preg_replace("#\n#","<br />",$lignes);
echo "$lignes";
}
}
}

?>

Exemple :

 
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
                    
<?php

/*
On suppose que vous avez mis la fonction ci-dessus
dans le fichier functions.mod.php
*/
require("functions.mod.php");

// Affiche la source de fichier_a_afficher.php
display_source("fichier_a_afficher.php");

// Enregistre le code source dans $source
$source = display_source("fichier_a_afficher.php");

?>
<?php

/*
On suppose que vous avez mis la fonction ci-dessus
dans le fichier functions.mod.php
*/
require("functions.mod.php");

// Affiche la source de fichier_a_afficher.php
display_source("fichier_a_afficher.php");

// Enregistre le code source dans $source
$source = display_source("fichier_a_afficher.php");

?>

      Fonctions du code - Doc officielle PHP

   php.net  
Description
Versions PHP
    echo
Affiche une chaîne de caractères
PHP 4, 5, 7 et 8
    feof
Teste la fin du fichier
PHP 4, 5, 7 et 8
    fgets
Récupère la ligne courante à partir de l'emplacement du pointeur sur fichier
PHP 4, 5, 7 et 8
    file_exists
Vérifie si un fichier ou un dossier existe
PHP 4, 5, 7 et 8
    fopen
Ouvre un fichier ou une URL
PHP 4, 5, 7 et 8
    preg_replace
Rechercher et remplacer par expression rationnelle standard
PHP 4, 5, 7 et 8
Minimum 10 mots. Votre commentaire sera visible après validation.


 Autres snippets qui pourraient vous intéresser

Interpréter du code PHP dans un fichier HTML

Compatibilité : PHP 5, PHP 7, PHP 8

Et oui ce n'est pas du PHP !! Cela se passe coté serveur. Mettez ces 2 lignes de code dans votre fichier .htaccess pour que vos fichiers .htm et .html soient interprét

Comment afficher les erreurs

Compatibilité : PHP 5, PHP 7, PHP 8

PHP - En premier configurer le fichier php.ini et ensuite dans vos scripts PHP afficher les rapports d'analyse des erreurs avec 4 types possibles de rapport.

* Requêtes exécutées avec Recherche Contextuelle

  Les derniers scripts

Magepattern 1.1

logo Magepattern
Langue langue fr
Date  aujourd'hui
Taille 6 Mo
Catégorie CMS

PHP 8.5.5

logo PHP
Langue langue us
Date 12 Avril
Taille 32 Mo
Catégorie PHP

PHP 8.4.20

logo PHP
Langue langue us
Date 12 Avril
Taille 30 Mo
Catégorie PHP

Serendipity 2.6.0

logo Serendipity
Langue langue fr
Date 11 Avril
Taille 15 Mo
Catégorie Blogs

Drupal 11.3.6

logo Drupal
Langue langue us
Date 11 Avril
Taille 34 Mo
Catégorie CMS

TYPO3 14.2.0

logo TYPO3
Langue langue fr
Date 10 Avril
Taille 38 Mo
Catégorie CMS
avatar

KOogar

  06 Fév 2026

  SOURCE   Télécharger

Information sur les mises à jour

Dernière mise à jour :

06 Fév 2026
fonctionnement du code vérifié

135 Vues
Compatibilité du code
PHP 5, PHP 7, PHP 8
53 codes

Catégorie :  Fichiers-répertoires

Affiche la taille d'un fichier en Ko, Mo, Go, To, Po, Eo, Zo
Affiche une citation au hasard
Affiche une ligne d'un fichier de manière aléatoire
Afficher le code source d'un fichier PHP
Ajoute des lignes au début de vos fichiers textes
Calcul et affiche le nombre de ligne de plusieurs fichiers
Calcul la taille d'un dossier en Octet
Calcul la taille de répertoires et sous répertoires
Change le chmod d'un fichier par FTP
Compresse et décompresse un fichier
Compte le nombre de fichiers d'un répertoire
Compte le nombre de ligne
Copie du contenu d'un dossier en conservant l'arborescence
Copie récursive de dossiers
Copier des fichiers d'1 serveur à1 autre serveur
Création massive de fichiers zip à partir d'une table SQL
Créer un nouveau fichier
Créer un nouveau répertoire
Créer une arborescence récursivement
Découpe des fichiers volumineux
Découpe le path d'1 fichier
Déplace le pointeur de lignes
Déplace un dossier avec sous répertoires
Déplace un fichier dans un autre répertoire
Efface un répertoire et ses sous répertoires
Extrait les adresses emails d'un fichier texte
Indique si 1 répertoire existe sinon il le créer
Interprète du code PHP dans un fichier HTML
Limite la vitesse de download d'un fichier zip
Lire le contenu d'un fichier avec fopen
Lire le contenu d'un fichier ligne par ligne
Liste des répertoires et sous-répertoires
Liste un répertoire
Liste un répertoire par date
Liste un répertoire par ordre alphabétique
Liste un répertoire selon une extension
Mise en cache d'un site
Modifications dans plusieurs fichiers
Modifie massivement le contenu de fichiers texte
Obtenir l'extension d'un fichier
Obtenir l'extention d'un fichier d'une url
Réécrire un fichier en partant de la fin
Régule la vitesse de téléchargement d'un fichier local
Recherche une chaine de caractère dans un fichier
Remplace les balises BR par des \n
Renommer l'extension de fichiers
Supprime des fichiers selon une date
Supprime l'extension d'un fichier
Téléchargement de fichiers zip avec compteur
Upload basique + Formulaire
Upload Multi classe + Formulaire
Upload Multi tout type de fichiers + formulaire
Vide un répertoire de tous ses fichiers