sábado, 12 de septiembre de 2015

Conoce las funciones Básicas de Archivos PHP


Cambiar los permisos de un archivo 
chmod ('El_archivo.xxx',0777);

Cambiar el nombre del propietario de un archivo 
chown ('El_archivo.xxx','Mi nombre');

Copiar un archivo 
copy('El_archivo.xxx','/nuevo_directorio/');

Optener el directorio inicial de un archivo o subdirectorio 
dirname('directorio_raiz/subdirectorio');

Obtener el espacio disponible en un directorio en Bytes. 
disk_free_space('directorio');

Verificar si un archivo existe 
file_exists ('archivo.xxx');

Obtener la hora del ultimo acceso a un archivo 
fileatime('archivo.xxx');

Obtener la hora de la ultima modificación de un archivo 
filemtime('archivo.xxx');

Obtener el dueño de una archivo 
fileowner ('archivo.xxx');

Obtener los permisos de una archivo 
fileperms ('archivo.xxx');

Obtener el tamaño en bytes de un archivo 
filesize('archivo.xxx');

Obtener el tipo de archivo 
filetype('archivo.xxx');

Abrir un archivo o dirección URL 
fopen ('archivo.xxx','r');

Saber si un archivo es ejecutable 
is_executable('archivo.xxx');

Indicar si el archivo se puede leer 
is_readable('archivo.xxx');

Indica si un archivo fue subido mediante HTTP POST upload 
is_uploaded_file ('archivo.xxx');

Saber si un archivo se puede escribir 
is_writable ('archivo.xxx');

Crea un directorio con permisos. 
mkdir('/nuevo_directorio',0777);

Mover un archivo cargado a través de HTTP POST de un directorio a otro predefinido 
move_uploaded_file ('directorio/archivo.xxx','directorio2/archivo.xxx'); 

Leer el contenido resultante de archivo file_get_contents('el_archivo.xx'); 

Renombrar un archivo o directorio 
rename("/tmp/archivo_temp.txt", "/home/usuario/login/docs/mi_archivo.txt");

ELIMINAR UN DIRECTORIO 
rmdir('/directorio');

CREAR UN ARCHIVO TEMPORAL 
tmpfile(); 

ELIMINAR UN ARCHIVO 
unlink('ARCHIVO.XXX');

Importante: Alguna de estas funciones requieren tener permisos 0777 chmod para poder trabajar correctamente.

La mayoría de ellas devuelven un booleano, por lo cual se puede imprimir un resultado en pantalla de la siguiente manera: 

if(unlink('el_archivo.txt') echo 'se ha eliminado el archivo'; 
else echo 'Imposible eliminar el archivo, compruebe que el fichero exista y que tenga permiso xxx.'; 

?>


Recuerda que para establecer permisos a directorios o archivos se deben emplear 4 cifras no 3 como usualmente se hace y produce error. 
Ejemplos: 
0777, 0755, 0666, etc… 

Esto se debe a que el número para especificar el permiso debe incluirse en octal (Base 8). En PHP y otros lenguajes de programación. 
Los números en Base 8 se escriben con un 0 delante para diferenciarlos de los números en Base 10 o sistema decimal. 


Trabajando con archivos


Otras de las gran ventajas de PHP, es la manipulación de archivos internos y remotos. Para ello se utiliza una función esencial fopen(); que se encarga de abrir un archivo o URL, Basándose en una serie de parámetros que iremos describiendo. 

La sintaxis de esta función con la que trabajaremos es la siguiente: fopen ('archivo.xxx','Modo'); 

Donde archivo es el nombre del mismo y (.xxx) su extensión, cabe destacar que si la llamada de este archivo se hace de la siguiente forma: esquema://, se asume que es una URL y Php buscara un gestor de protocol para tal esquema. Recordemos que los protocoles pueden ser (http, https, ftp, ftps, pop, pop3, y otros), si Php no encuentra una o más envolturas registradas para dicho protol, se emitirá un mensaje de error. 

Modo, se refiere a la forma en que abrimos el archivos (bajo que recursos). Por ejemplo: 

Si queremos hacer una apertura para solo lectura, o lectura y escritura u otro. Estos modos se designan con Letras predefinidas en Php, que son las siguientes: 

'r' Apertura para sólo lectura; ubica el apuntador de archivo al comienzo del mismo. 

'r+' Apertura para lectura y escritura; ubica el apuntador de archivo al comienzo del mismo. 

'w' Apertura para sólo escritura; ubica el apuntador de archivo al comienzo de éste y lo trunca a una longitud de cero. Si el archivo no existe, intenta crearlo. 

'w+' Apertura para lectura y escritura; ubica el apuntador de archivo al comienzo de éste y lo trunca a una longitud cero. Si el archivo no existe, intenta crearlo. 

'a' Apertura para sólo escritura; ubica el apuntador de archivo al final del mismo. Si el archivo no existe, intenta crearlo. 

'a+' Apertura para lectura y escritura; ubica el apuntador de archivo al final del mismo. Si el archivo no existe, intenta crearlo. 

'x' Creación y apertura para sólo escritura; ubica el apuntador de archivo al comienzo de éste. Si el archivo ya existe, la llamada a fopen() fallará devolviendo FALSE y generando un error de nivel E_WARNING. Si el archivo no existe, intenta crearlo. Esto es equivalente a especificar las banderas O_EXCL|O_CREAT en la llamada de sistema open(2) interna. Esta opción es soportada en PHP 4.3.2 y versiones posteriores, y sólo funciona con archivos locales. ´ 

'x+' Creación y apertura para lectura y escritura; ubica el apuntador de archivo al comienzo de éste. Si el archivo ya existe, la llamada a fopen() fallará devolviendo FALSE y generando un error de nivel E_WARNING. Si el archivo no existe, intenta crearlo. Esto es equivalente a especificar las banderas O_EXCL|O_CREAT en la llamada de sistema open(2) interna. Esta opción es soportada en PHP 4.3.2 y versiones posteriores, y sólo funciona con archivos locales.
Un ejemplo: 

<? 
$archivo= fopen("documento.txt" , "r"); 
if ($archivo) { 
while (!feof($archivo)) { 
echo fgets($archivo, 255).'<br>'; 


fclose ($archivo); 
?>

Explicando: 
Primero abrimos el archivo en modo de lectura y lo agrupamos a la variable $archivo, si se puede realizar la apertura (ósea si fopen() devuelve TRUE), Ejecutamos un bucle WHILE y en el argumento introducimos la función feof(), Encargada de verificar si el apuntador a un fichero esta al final del mismo. Luego la función fgets(), se encarga de imprimir la línea del fichero apuntado. y finalmente cerramos el archivo con fclose(); 

Otro Ejemplo: 

<? 
$archivo=fopen("documento.txt" , "w"); 
if ($archivo) { 
fputs ($archivo, "Resulto el script"); 

fclose ($archivo); 
?>


Explicando: 
Abrimos el archivo nuevamente pero esta vez en modo de solo Escritura. Si se puede ejecutar ese proceso if($archivo), agregamos una línea con fputs(), que tendrá como contenido Resulto el script. 


Fuente:enlace
Si quieres seguir aprendiendo con nosotros, puedes ingresar a nuestros 
Cursos y Diplomados de Tecnología Web visita www.uneweb.edu.ve  para más información

No hay comentarios:

Publicar un comentario

Entradas populares