Descripción
int
fopen ( string filename, string mode [, int use_include_path])
Si filename comienza con "http://" (no es
sensible a mayúsculas), se abre una conexión HTTP 1.0 hacia el
servidor especificado y se devuelve un apuntador de fichero al comienzo
del texto de respuesta.
No maneja redirecciones HTTP, por eso se debe incluir una barra
final cuando se trata de directorios.
Si filename comienza con "ftp://" (no es
sensible a mayúsculas), se abre una conexión ftp hacia el servidor
especificado y se devuelve un apuntador al fichero requerido. Si el
servidor no soporta ftp en modo pasivo, esto fallará. Se pueden
abrir fichero via ftp para leer o para escribir (pero no ambas
cosas simultáneamente).
Si filename no comienza con nada de lo anterior,
el fichero se abre del sistema de ficheros, y se devuelve un apuntador
al fichero abierto.
Si el abrir el fichero falla, la función devuelve FALSE.
mode puede ser cualquiera de lo siguiente:
'r' - Abre para sólo lectura; sitúa el apuntador del fichero al
comienzo del mismo.
'r+' - Abre para lectura y escritura; situa el apuntador del fichero
al comienzo del fichero.
'w' - Abre para sólo escritura; sitúa el apuntador del fichero al
comienzo del fichero y trunca el fichero con longitud cero.
Si el fichero no existe, trata de crearlo.
'w+' - Abre el fichero para lectura y escritura; sitúa el apuntador
del fichero al comienzo del fichero y trunca el fichero con longitud
cero. Si el fichero no existe, trata de crearlo.
'a' - Abre sólo para escribir (añadir); sitúa el apuntador del fichero al
final del mismo. Si el fichero no existe, trata de crearlo.
'a+' - Abre para lectura y escritura (añadiendo); sitúa el apuntador
del fichero al final del mismo. Si el fichero no existe, trata de crearlo.
Además,
mode puede contener la letra
'b'. Esto es útil para sistemas que diferencian entre ficheros
binarios y de texto (ej. es inútil en Unix). Si no se necesita,
será ignorado.
Puede usarse el tercer parámetro opcional y fijarlo a "1", si
también se quiere buscar el fichero en el include_path.
Ejemplo 1. Ejemplo de fopen()() $fp = fopen("/home/rasmus/file.txt", "r");
$fp = fopen("http://www.php.net/", "r");
$fp = fopen("ftp://user:password@example.com/", "w"); |
|
Si experimentas problemas a la hora de leer y escribir a
ficheros y estas usando la version de PHP como módulo para el
servidor, recuerda que debes asegurar que los ficheros y directorios
que estas usando son accesibles al proceso servidor.
En la plataforma Windows, ten cuidado de escribir correctamente
las barras invertidas en el path del fichero (poniéndolas dobles),
o usa barras directas.
Ver también fclose(),
fsockopen(), y popen().