Cómo utilizar las funciones de archivo y directorio php para HTML5 y CSS3 programación

A veces, es posible que tenga PHP para trabajar con archivos en un directorio para la programación HTML5 y CSS3. Digamos que tienes una herramienta de información para un cliente. Cada semana, se genera un nuevo informe para el cliente y colóquelo en un directorio.

No quiero tener que alterar la página cada vez que hace esto, por lo que en su lugar, hacer una página que genera automáticamente una lista de todos los archivos de informe para el cliente para elegir. Este es el tipo de cosas que puedes hacer con funciones como opendir () y readdir ().

opendir ()

Usando el opendir () función, puede crear una variable (técnicamente hablando, este tipo de variable se denomina manejar) Que le permite trabajar con un directorio en particular.

los opendir () función toma un parámetro: la ruta de acceso al directorio en el que desea trabajar. los opendir () función devuelve un gestor de directorio (algo así como una conexión con el directorio) en el éxito y Falso en caso de fallo.

He aquí un ejemplo de la opendir () función. Esta función almacena un gestor de directorio a la C: xampp htdocs XFD xfd5.7 directorio en el $ directoryHandle variables:

$ directoryHandle = opendir ("C: xampp htdocs XFD xfd5.7") -

readdir ()

Después de abrir el directorio con el opendir () función, usted tiene un cursor señaló el primer archivo. En este punto, usted puede leer los nombres de los archivos uno a uno con un mientras lazo. Para ello, utilice el readdir () función.

los readdir () función toma un parámetro: la variable que contiene el gestor de directorio creada con el opendir () función. los readdir () función devuelve el nombre de un archivo que se esté centrado en el cursor sobre el éxito y el fracaso.

He aquí un ejemplo de la readdir () función. Esta función recorre en iteración cada archivo en el directorio especificado por $ dp y asigna el nombre del archivo actual a un nuevo índice en $ fileArray matriz:

while ($ currentFile == false!) {$ currentFile = readdir ($ dp) - $ filesArray [] = $ currentFile-}

El actual readdir () función en sí es readdir ($ dp). Para más información sobre la función, consulte la documentación en línea oficial de PHP en http://us.php.net/function.readdir.

En algunas circunstancias, la readdir () función puede devolver los valores no booleanos que evalúan a Falso, como 0 o " ". Al probar el valor de retorno de la readdir () función, uso === o !==, en lugar de ==o !==, para dar cabida a estos casos especiales.

chdir ()

Si desea crear un archivo en un directorio distinto del directorio que la página PHP crear el archivo está en, usted necesita para cambiar de directorio. Cambia directorios en PHP con el chdir () función.

Si usted quiere estar absolutamente seguro de que usted está en el directorio correcto antes de escribir el archivo, puede utilizar un si declaración con el getcwd () función. Esto suele ser un poco excesivo, pero puede ser útil.

los chdir () función toma un parámetro: la ruta al directorio que desea trabajar. los chdir () retornos de función Cierto en caso de éxito y Falso en caso de fallo.

He aquí un ejemplo de la chdir (). Esta función cambia a la C: xampp htdocs XFD xfd5.6 directorio:

chdir ("C: xampp htdocs XFD xfd5.6") -

Cuando se cambia a un directorio, usted es entonces libre para escribir en él con la función.

¿Cómo generar la lista de enlaces de archivos

Usando el opendir () y readdir () funciones, se puede generar una lista de enlaces a los archivos de un directorio.

Echa un vistazo al código PHP para el ejemplo de la lista de enlaces a archivos:

fileList.php
    ? lt; php $ dp = opendir (".") - $ currentFile = "" -mientras (! $ currentFile == false) {$ currentFile = readdir ($ dp) - $ filesArray [] = $ currentFile-} // terminar mientras // ordenar la matriz de alfa ordersort ($ filesArray) - ". -foreach ($ filesArray como $ unArchivo) {$ salida =" // escribir la salida $ salida = "
  • $ unArchivo
  • n "-} // fin foreachprint" $ output "->

He aquí cómo el programa fileList.php realiza su magia:

  1. Abra un indicador de directorio en el directorio actual.

    En todos los sistemas operativos, el período (.) Carácter indica el directorio actual.

    $ dp = opendir (".") -
  2. Construir un bucle que se repite hasta que no hay archivos que quedan.

    El especial !==la comparación se utiliza para prevenir los problemas poco comunes, tales como archivos con el nombre falso. (Sí, lo creas o no, que a veces sucede.)

    imagen0.jpg
    while ($ currentFile! == false) {
  3. Lea el siguiente archivo desde el puntero del directorio.

    los readdir () función lee el siguiente archivo y lo almacena en una variable ($ currentFile).

     $ currentFile = readdir ($ dp) -
  4. Anexar el archivo actual a una matriz.

    Si simplemente asigna un archivo a una matriz sin un índice, PHP coloca el elemento en el siguiente espacio disponible.

     $ filesArray [] = $ currentFile-
  5. Ordenar la matriz.

    Los archivos no estarán en ningún orden en particular en la matriz, a fin de utilizar el sort () función.

    sort ($ filesArray) -
  6. Imprimir cada elemento de la matriz.

    Puede utilizar una lista desordenada de enlaces a mostrar cada archivo. Que sea un vínculo de modo que el usuario puede hacer clic en el archivo para verlo directamente.

    foreach ($ filesArray como $ unArchivo) {$ salida. = "
  7. $ unArchivo
  8. n "-} // foreach final

En un servidor de Windows, usted tiene que escapar de las barras invertidas en la ruta del archivo. Esto se hace mediante la adición de una barra invertida antes de que las barras invertidas en la ruta del archivo. (Por ejemplo, podría escribir C: xampp htdocs XFD xfd5.7 en lugar de C: xampp htdocs XFD xfd5.7 .) En un servidor Unix, no tienes que hacer esto porque las rutas de archivos utilizan barras (/) En lugar de barras invertidas ().

Si desea sólo un determinado tipo de archivo, puede utilizar expresiones regulares para filtrar los archivos. Si hubieras querido sólo el .TXT y .dat archivos del directorio, que podrían haber ejecutar matriz del archivo a través de este filtro para eliminar a los tipos de archivos no deseados:

$ filesArray = preg_grep ("/ txt $ | dat $ /", $ filesArray) -



» » » » Cómo utilizar las funciones de archivo y directorio php para HTML5 y CSS3 programación