Sommaire
Système de fichiers
basename
chgrp
chmod
chown
clearstatcache
copy
delete
dirname
disk_free_space
diskfreespace
disk_total_space
fclose
feof
fflush
fgetc
fgetcsv
fgets
fgetss
file
file_exists
fileatime
filectime
filegroup
fileinode
filemtime
fileowner
fileperms
filesize
filetype
flock
fopen
fpassthru
fputs
fread
fscanf
fseek
fstat
ftell
ftruncate
fwrite
set_file_buffer
is_dir
is_executable
is_file
is_link
is_readable
is_writable
is_writeable
is_uploaded_file
link
linkinfo
mkdir
move_uploaded_file
parse_ini_file
pathinfo
pclose
popen
readfile
readlink
rename
rewind
rmdir
stat
lstat
realpath
symlink
tempnam
tmpfile
touch
umask
unlink
|
6.30.31 fopen[ Exemples avec fopen ] PHP 3, PHP 4 >= 4.0.0Description
int fopen(string filename ,string mode ,[int
use_include_path
])
Si filename commence par "http://" (insensible à
la casse), une connexion HTTP 1.x est ouverte avec le serveur
spécifié, et un pointeur sur la réponse fournie est
retourné. Une en-tête 'Host:' est envoyé avec la
requête, afin de gérer les virtual hosts basés sur les noms.
Notez que le pointeur de fichier retourné représente le corps de la
réponse, et qu'il n'est pas possible d'accéder aux en-têtes HTTP
avec cette fonction.
Les versions antérieures à PHP 4.0.6, ne gère pas les
redirections automatiques, ce qui oblige à ajouter les slash finaux
"/" pour indiquer un dossier.
Si filename commence par "ftp://" (insensible à
la casse), une connexion FTP est ouverte avec le serveur spécifié,
et un pointeur sur la réponse fournie est retourné. Si le serveur
ne supporte par le mode FTP passif, fopen échouera.
Vous pouvez ouvrir des fichiers en lecture seulement, ou en écriture
seulement (le full duplex n'est pas supporté).
Si filename commence par "php://stdin", "php://stdout",
ou "php://stderr", le flot correspondant sera ouvert. (Cela a été
introduit en PHP 3.0.13; dans les anciennes versions, les fichiers "/dev/stdin"
ou "/dev/fd/0" devaient être utilisés pour accéder à
ces flots).
Si filename commence par n'importe quoi d'autre, PHP
tentera de lire ce fichier dans le système local, et un pointeur sur
le fichier ouvert sera retourné.
Si l'ouverture échoue, fopen retourne
FALSE.
mode peut prendre les valeurs suivantes :
'r' - Ouvre en lecture seule, et place le pointeur de fichier au
début du fichier.
'r+' - Ouvre en lecture et écriture, et place le pointeur de
fichier au début du fichier.
'w' - Ouvre en écriture seule; place le pointeur de fichier au
début du fichier et réduit la taille du fichier à 0.
Si le fichier n'existe pas, on tente de le créer.
'w+' - Ouvre en lecture et écriture; place le pointeur de fichier
au début du fichier et réduit la taille du fichier à
0. Si le fichier n'existe pas, on tente de le créer.
'a' - Ouvre en écriture seule; place le pointeur de fichier à
la fin du fichier file. Si le fichier n'existe pas, on tente de le
créer.
'a+' - Ouvre en lecture et écriture; place le pointeur de fichier
à la fin du fichier. Si le fichier n'existe pas, on tente de le
créer.
De plus, mode peut contenir la lettre 'b'. Cette option
n'est utile que sur les systèmes qui font la différence entre
les fichiers binaires et les fichiers textes (en bref, c'est une
fonctionnalité Windows, totalement inutile sous Unix).
S'il n'est pas nécessaire, il sera ignoré.
Vous pouvez utiliser le troisième paramètre optionnel
pour explorer le dossier include_path,
en le mettant à 1.
Exemple avec fopen |
<?php $fp = fopen("/home/rasmus/file.txt", "r"); $fp = fopen("http://www.php.net/", "r"); $fp = fopen("ftp://user:password@example.com/", "w"); ?>
|
Si vous rencontrez des problèmes en lecture ou écriture
de fichier et que vous utilisez PHP en version module de serveur,
n'oubliez pas que les fichiers auxquels vous accédez ne sont
pas nécessairement accessibles au processus serveur.
Sous Windows, assurez-vous de bien échapper les anti-slash
utilisés dans le chemin du fichier, ou bien utilisez des slash.
|
<?php $fp = fopen("c:\\data\\info.txt", "r"); ?>
|
Voir aussi
fclose,
fsockopen,
socket_set_timeout et
popen.
|