Précédent   Forum des professionnels en informatique > PHP > Langage > Fichiers
Fichiers Forum d'entraide sur les fichiers avec PHP. Avant de poster -> FAQ fichiers et Sources fichiers
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 02/11/2007, 09h35   #1
Rédacteur
 
Inscription : juillet 2004
Messages : 2 573
Détails du profil
Informations personnelles :
Âge : 34

Informations forums :
Inscription : juillet 2004
Messages : 2 573
Points : 1 973
Points : 1 973
Par défaut Récupérer le nom d'un fichier

Bonjour

Existe-t-il une fontion qui permet d'afficher le nom du fichier en cours d'utilisation ?

Je possède un fichier foot et j'indique dans celui-ci la date de dernière modification avec la fonction filemtime() mais il me manque le nom du fichier.

Pourriez-vous me donner un coup de main s'il vous plaît ?

Merci
__________________
.Olivier
Olivier Regnier est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/11/2007, 09h51   #2
Membre Expert
 
Inscription : janvier 2005
Messages : 2 288
Détails du profil
Informations forums :
Inscription : janvier 2005
Messages : 2 288
Points : 2 287
Points : 2 287
Je comprends pas bien la question, si tu écris dans le fichier c'est bien que tu connais son nom non? sinon comment es-tu censé connaitre le fichier? Qu'entends tu pas "en cours d'utilisation" ?
koopajah est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/11/2007, 10h17   #3
Rédacteur
 
Inscription : juillet 2004
Messages : 2 573
Détails du profil
Informations personnelles :
Âge : 34

Informations forums :
Inscription : juillet 2004
Messages : 2 573
Points : 1 973
Points : 1 973
Bonjour

J'ai un fichier foot.php avec ce contenu:
Code :
1
2
3
4
5
6
7
8
9
10
<?php
function include_foot() {
    echo '<hr />' . "\n";
    echo '<a href="http://www.openbsd.org"><img src="../images/pbobsd.gif" border="0" align="right" alt="Powered by OpenBSD" /></a>' . "\n";
    setlocale(LC_ALL,'french');
    $path = "/oregnier/modules/error.php";
    $file = basename ($path);
    echo '<pre>$Id: ' ."$file,v 1.1 " .date("Y/m/d H:i:s ", filemtime($SCRIPT_FILENAME)) . "olivier Exp $" . '</pre>';
}
?>
Le but de la mission c'est d'inclure ce fichier par exemple dans le fichier error.php comme suit:
Code :
require("../modules/foot.php");
et d'appeler la fonction:
Code :
<?php include_foot(); ?>
mais je recontre deux problèmes:
  • La dâte ne change jamais = 1970/01/01 01:00:00
  • Si je veux inclure le foot.php dans un autre fichier placé dans un répertoire différent, je suis coincé car le path n'est plus le même.
Je souhaite utiliser un seul fichier foot mais qui soit capable de m'afficher la dâte de dernière modification et le nom du fichier.

Pour le moment, j'obtiens le résultat suivant:
Code :
$Id: error.php,v 1.1 1970/01/01 01:00:00 olivier Exp $
Merci
__________________
.Olivier
Olivier Regnier est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/11/2007, 10h26   #4
Membre Expert
 
Inscription : janvier 2005
Messages : 2 288
Détails du profil
Informations forums :
Inscription : janvier 2005
Messages : 2 288
Points : 2 287
Points : 2 287
Je dois être mal réveillé, je n'ai toujours pas compris. Mais déjà pour commencer tu utilises la variable $SCRIPT_FILENAME dans filemtime() alors qu'elle n'existe pas dans la fonction. Souhaites tu connaitre la date de derniere modification de error.php? Dans ce cas il faut plutot utiliser ta variable $path.
Sinon, d'où vient $SCRIPT_FILENAME ?
koopajah est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/11/2007, 10h45   #5
Rédacteur
 
Inscription : juillet 2004
Messages : 2 573
Détails du profil
Informations personnelles :
Âge : 34

Informations forums :
Inscription : juillet 2004
Messages : 2 573
Points : 1 973
Points : 1 973
Citation:
Envoyé par koopajah Voir le message
Je dois être mal réveillé, je n'ai toujours pas compris.

Citation:
Envoyé par koopajah Voir le message
Souhaites tu connaitre la date de derniere modification de error.php? Dans ce cas il faut plutot utiliser ta variable $path.
Voici le code corrigé:
Code :
1
2
3
4
5
6
7
8
9
10
11
<?php
 
function include_foot() {
    echo '<hr />' . "\n";
    echo '<a href="http://www.openbsd.org"><img src="../images/pbobsd.gif" border="0" align="right" alt="Powered by OpenBSD" /></a>' . "\n";
    setlocale(LC_ALL,'french');
    $path = "/oregnier/modules/error.php";
    $file = basename ($path);
    echo '<pre>$Id: ' ."$file,v 1.1 " .date("Y/m/d H:i:s ", filemtime($file)) . "olivier Exp $" . '</pre>';
}
?>
Pour la dâte c'est bon, merci de m'avoir réveillé
Ce fichier foot.php doit être inclu dans tous les fichiers du site comme index.php, feedback.php, etc. Comprends-tu ce que je veux dire ?
__________________
.Olivier
Olivier Regnier est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/11/2007, 11h19   #6
Rédacteur
 
Inscription : juillet 2004
Messages : 2 573
Détails du profil
Informations personnelles :
Âge : 34

Informations forums :
Inscription : juillet 2004
Messages : 2 573
Points : 1 973
Points : 1 973
Tu m'as abandonné ?

J'ai trouvé la solution, voici le code:
Code :
1
2
3
4
5
6
7
<?php
  echo '<hr />' . "\n";
  echo '<a href="http://www.openbsd.org"><img src="../images/pbobsd.gif" border="0" align="right" alt="Powered by OpenBSD" /></a>' . "\n";
  setlocale(LC_ALL,'french');
  $file = basename($PHP_SELF);
  echo '<pre>$Id: ' ."$file,v 1.1 " .date("Y/m/d H:i:s ", filemtime($file)) . "olivier Exp $" . '</pre>';
?>
Lorsque j'inclus le foot.php dans le fichier feedback.php, il me renvoit:
Code :
$Id: feedback.php,v 1.1 2007/11/02 11:15:34 olivier Exp $
ou dans le fichier error.php:
Code :
$Id: error.php,v 1.1 2007/11/02 11:01:10 olivier Exp $
Voilà

Merki pour ton aide
__________________
.Olivier
Olivier Regnier est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 04h35.


 
 
 
 
Partenaires

Hébergement Web