Codeigniter “file_exists($filename)”
Besoin d'aide avec la codeigniter, je pense que file_exists est pour le chemin d'accès au serveur, pas pour les url. mais mon dossier image a obtenu le même niveau avec l'application et le système de dossier. trouve rien sur google, s'il vous plaît aider
$url=base_url();
$filename="$url/upload/$id.jpg";
if (file_exists($filename)){
echo "<li><img src=\"".$url."upload/$id.jpg\" width=\"40\" height=\"40\" /></li>";
}else{
echo "<li><img src=\"http://www.mydomain.com/haha/image/noimg.png\" width=\"40\" height=\"40\" /></li>";
}
Une chose, file_exists est pour le serveur chemins, pas d'url. Si vous ne l'utilisez base_url(), vous pouvez utiliser APPPATH
OriginalL'auteur will.i.am | 2012-02-09
Vous devez vous connecter pour publier un commentaire.
Codeigniter est toujours en cours d'exécution sur
index.php
, de sorte que tous les chemins sont relatifs à partir de là. Vous pouvez utiliser une des méthodes suivantes, en supposantupload/
est au même niveau queindex.php
:file_exists("upload/$id.jpg")
file_exists("./upload/$id.jpg")
file_exists(FCPATH."upload/$id.jpg")
FCPATH
est une constante qui Codeigniter, qui contient le chemin absolu de votreindex.php
.Comme une note de côté, je préfère
is_file()
lors de la vérification des fichiers, commefile_exists()
retourne true en cas de répertoires. En outre, vous pouvez voir sigetimagesize()
retourneFALSE
à assurez-vous que vous avez une image.mes données ont l'image de chemin d'accès complet..par exemple..(localhost/media/newsdata/20150923/Divertissement/Casspture.PNG), il est worng lorsque j'utilise file_exists($thisfile), il a toujours été return false..s'il vous plaît
Utilisez uniquement le chemin d'accès au serveur:
file_exists('media/newsdata/20150923/Entertainment/Casspture.PNG')
que faire si l'utilisateur a chiffré le nom de fichier lors du téléchargement d'elle, comment devons-nous vérifier? @WesleyMurch
OriginalL'auteur Wesley Murch