483 Shares 9837 views

PHP: PHP-lectura de archivos. Trabajar con archivos en PHP: lectura, escritura, y recomendaciones

PHP apareció mucho más tarde que los lenguajes de programación han reforzado sus posiciones, formular una idea general acerca de la sintaxis, la lógica, las variables, y otros objetos de programación. Archivos y funciones que trabajan con ellos no tenían ningún progreso, e incluso el problema de cifrado de archivos que surgió por causas naturales, no dio lugar a soluciones radicalmente nuevas.

observaciones generales

El principal trabajo con archivos, sean las que sean, es abrir, leer / escribir y cerrar. Puede utilizar la función de bloqueo / desbloqueo del acceso al archivo en el momento de la transformación, se puede montar la posición de lectura / escritura en un archivo – de todo, como en el pasado, en el pasado distante.

Un aspecto importante de PHP es un exceso de funciones para trabajar con archivos y las opciones para su uso. En la práctica suficiente para utilizar un diseño sencillo, que trabajan opciones. Archivo – esto es, en primer lugar, la memoria del programa. Es posible almacenar información. El objetivo de cualquier programa, con el propósito de cualquier sitio – para representar, gestionar y garantizar la seguridad de la información.

hecho importante

Lo que solía ser requisito inmutable de compatibilidad, al menos, de abajo hacia arriba. Es decir, una vez que el programa escrito en una versión del lenguaje de programación perfectamente compilado / interpretado en la próxima versión. En la programación de hoy no lo es. compatibilidad con la sintaxis del lenguaje requisito ha pasado a la historia como una lucha entre estilos y versiones de software y de diferentes instrumentos se ha convertido en la norma de la vida.

Trabajar con archivos, como bases de datos, tan importante, lo importante que es la interfaz del sitio. El primero en ser construido de tal manera que cuando se cambia la plataforma, hosting, versión del lenguaje no tenía necesidad de cambiar el código del sitio. Interfaz de gestión de archivos debe ser colocado en una secuencia de comandos independiente y para garantizar una compatibilidad total, así como el diseño web debe adaptarse adecuadamente a cualquier dispositivo, navegador, y proporcionar el resto de la funcionalidad del sitio de las mismas oportunidades.

Lea y cambiarse a sí mismo

¿Puede el programa en sí mismo para cambiar, es decir, si para mejorar el guión? A día de hoy, la cuestión de interés para muchos. Pero suena mucho más tarea práctica: PHP PHP lectura de un archivo. No siempre el desarrollador puede resolver tal o cual problema escribiendo un código específico. A veces es necesario cambiarlo cuando el visitante del sitio vino y que no hayan previsto en la etapa de desarrollo del tema.

Al igual que en todos los demás casos, primero debe abrir el archivo. No importa, no existe el archivo o no. Si sabe que existe el archivo (función file_exists () da una respuesta positiva), que se utiliza fopen () para el acceso 'r', 'r +', 'a', 'A +'. Si todavía no tiene el archivo, entonces el acceso 'a', 'A +', 'w', 'w +'. El resultado se abrirá el descriptor de archivo. Cierra la función de archivo fclose ().

Es conveniente utilizar PHP para leer el archivo en una matriz cuando no es necesario manejar en el momento de la lectura.

if ($ file_exists (FName)) {

$ ALINES = archivo ($ FName)

}

En esta realización, cada línea del archivo se encuentra en posición en elemento de la matriz de forma secuencial. Debe tenerse en cuenta que el archivo de función () o file_get_contents () no es necesario para abrir un archivo y cerrarlo.

Cuando el archivo de entrada es demasiado grande y la necesidad de encontrar un poco de información, o por otras razones, puede utilizar PHP para leer el archivo línea por línea. PHP proporciona la capacidad de hacer que fgets () y fgetc ().

$ Clines = ''

$ Fv = fopen ($ FName, 'r')

$ I = 0

while ((falso! == ($ Cline = fgets ($ FVS, 2000)))) {

$ I ++

$ Clines. = '
'. $ I. '). '. $ CLINE

}

fclose ($ FVS)

Ambas opciones funcionan perfectamente. Sin embargo, la realización de un archivo PHP PHP de lectura para otros cambios, se deben tomar precauciones. No siempre puede ser proporcionada en la etapa de desarrollo de las opciones del sitio para su uso por parte del visitante. Es mejor si el cambio de la escritura se lleva a cabo dentro de las características del sitio, y la gestión de este cambio no es visible para los visitantes, incluyendo un administrador de recursos.

guardar los resultados

Recuperar y actualizar la información almacenada en un archivo fputs () línea de función o función file_put_contents () en su totalidad.

$ FName = $ _SERVER [ 'DOCUMENT_ROOT']. '/tmp/scData.php'

$ Fv = fopen ($ FName, 'a')

grey (FVS) $, LOCK_EX

$ Cline = '1 línea'. chr (10)

fputs (FVS $, $ Cline)

Cline $ = '2 line'. chr (10)

fputs (FVS $, $ Cline)

fflush ($ FVS)

grey (FVS) $, LOCK_UN

fclose ($ FVS)

En la realización, la línea de grabación por línea, es posible manipular los datos durante el proceso de grabación, en el segundo caso, la matriz grabable o fila se coloca en el archivo completo.

$ Archivo = 'scData.php'

$ CContents = file_get_contents (archivo $)

// agregar entradas

$ CContents. = "Nueva entrada n"

// elemento Archivo de vuelta

file_put_contents ($ archivo, $ cContents)

Lectura y escritura de archivos PHP es simple y natural. Sin embargo, es importante tener en cuenta: Cada archivo tiene un nombre, la extensión y la ruta (carpeta). Para un script PHP tiene la capacidad de leer y escribir archivos, este script debe tener los derechos apropiados. Ellos automáticamente acondicionados para acoger, pero en algunos casos, quieren expandirse.

En algunos casos, es deseable comprobar los resultados, la lectura de la prueba. Escritura de archivos de PHP es necesario durante la fase de desarrollo, pero en algunos casos, en interés de la seguridad o la fiabilidad de la grabación de datos sitio de inspección es esencial.

Un rasgo característico de PHP, MySQL, JavaScript, y especialmente los navegadores: andar silencioso algunos errores. "No reconozco, no lo haga …" – no es una buena práctica del borde delantero de la tecnología de la información, sino que enseña a los desarrolladores no cometer errores y escribir limpio, código de alta calidad, que también es bueno.

PHP y trabajo con documentos reales

PHP PHP leer un archivo, por supuesto, es de interés práctico, pero esta esfera de programación. Los clientes y visitantes interesados en la naturaleza aplicada de la información, que se utiliza para ver en forma de tablas y documentos, en particular, en formatos * .xlsx y * .docx archivos. Estos son los archivos de MS Excel y MS Word.

listas de productos, precios, características comunes para formar en forma de tablas, por lo que PHP leer el archivo de Excel es esencial.

Para trabajar con estos archivos diseñados biblioteca PHPExcel y PHPWord. Sin embargo, el contenido de archivos * .xlsx y * .docx representado en el estándar OOXML, entonces hay una verdadera comprensión del documento disponible se presenta al archivo zip. archivo Zip – es un conjunto de archivos, incluyendo imágenes, objetos, fórmulas, pegar desde otros programas. Los archivos de texto es una descripción de la forma de las etiquetas. Leer el archivo es pequeño, es necesario distinguir, para obtener el contenido y la estructura de usar y cambio.

Esto significa que la operación de lectura se convierte en la apertura del proceso de archivo. Estas bibliotecas biblioteca de documentos abiertos sí mismo y ofrece a los desarrolladores amplias funciones para la lectura, procesamiento y registro de tales documentos.

Excel-mesa

Con el fin de leer el Excel-mesa, es suficiente conocer el nombre del archivo y la ruta de acceso a la misma ($ XLS). Como resultado de la siguiente matriz de código de los valores originales de hoja de cálculo de Excel se generará:

'PhpOffice / PHPExcel / IOFactory.php' include_once

funcionar scGetExcelFile ($ xls) {

$ ObjPHPExcel = PHPExcel_IOFactory :: load ($ xls)

$ ObjPHPExcel-> setActiveSheetIndex (0)

// esta matriz contiene matrices de filas

$ = $ ASheet objPHPExcel-> getActiveSheet ()

$ Array = array ()

// procesamiento

foreach ($ aSheet-> getRowIterator () como $ fila) {

$ = $ CellIterator de fila> getCellIterator ()

$ Item = array ()

foreach ($ cellIterator como $ células) {

array_push ($ item, iconv ( 'UTF-8', 'CP1251', $ de célula> getCalculatedValue ()))

}

array_push ($ matriz, $ item)

}

devolver $ array

}

La lectura y el procesamiento de archivo de Excel es mucho más complejo de procesamiento de documentos de Word. La mejor opción si lo que necesita para implementar un proyecto de gran envergadura para leer y procesar la información de la aplicación – la primera biblioteca principal PHPWord. Esto le dará una buena experiencia y una entrada rápida en los detalles de la emisión.

documentos de Word

Sólo dos líneas:

$ OWord = new PhpOffice PhpWord PhpWord ()

$ ODocx = $ this-> oWord-> loadTemplate ($ cFileName)

Ahora el documento está disponible para el procesamiento de $ cFileName. A continuación, abra el archivo, seleccionar y analizar su contenido, que se pueden visualizar en la página web, cambiar y escribir de nuevo.

$ ZipClass = new ZipArchive ()

$ ZipClass-> abierto ($ this-> tempFileName)

// leer el contenido completo del documento

for ($ i = 0; i numfiles; $ i ++) {

$ = $ CNameIn zipClass-> getNameIndex ($ i)

$ CNameInExt = substr ($ cNameIn, -4)

if (($ cNameInExt == '.xml') || ($ cNameInExt == 'REL')) {

// archivos con la extensión '.xml' y' .xml.rels' almacenado en un documento de tabla

// cada xml-cadena está escrito con un número único de la orden

$ = $ CBodyIn zipClass-> getFromName ($ cNameIn)

$ CBodyInLen = strlen ($ cBodyIn)

} Else {

// todos los otros archivos almacenados en la carpeta de documentos en la forma como se

$ CNameOnly = substr ($ cNameIn, strrpos ($ cNameIn, '/') + 1)

$ ZipClass-> getFromName ($ cNameIn, $ cWorkPath); // contenido de un archivo

}

Las oportunidades que ofrece el uso de PHP PHP Excel y Word, permiten manipular los documentos reales, por lo que el contenido relevante en un momento dado. En el mundo dinámico de hoy, se vuelve muy importante. El centro de gravedad se ha movido mucho del uso local de la tecnología informática en el espacio virtual en Internet. Debido a que la creación de hojas de cálculo y documentos en los productos locales de Microsoft es menos eficaz que el trabajo con este tipo de documentos en un modo automático o semiautomático, en el sitio, que está disponible no sólo para el creador de la tabla o un documento, sino también a sus clientes.

Los archivos de texto, otra vida

Como los archivos más fácil que los archivos PHP o documentos de solicitud de una primera aproximación texto. Sin embargo, hay algo en que pensar. leer / escribir archivos de este tipo de operaciones ya se han identificado más arriba, pero mucho más importante es el significado de este tipo de archivos.

Kohl es una realidad tal, el cliente y el servidor (en la primera reina JavaScript, en el segundo – PHP), incluso los mecanismos de cookies y sesiones no pueden hacer frente a la necesidad de transferir información entre los scripts, páginas, esos u otros procesos.

Es posible reflejar los cambios necesarios en la base de datos, sino para todos sus méritos y pequeño archivo de texto temporal o permanente de velocidad puede ser la opción de transmisión de información mucho más interesante. Si no se crea una gran cantidad de archivos pequeños y controlar su tamaño, pueden ser una versión más flexible de la base de datos específica y.

PHP leer archivo de texto es rápido, se puede desmontar de inmediato en la estructura, conjunto o el objeto. Esto último es muy importante ya que permite crear objetos que viven fuera del tiempo asignado a la secuencia de comandos PHP, que se sabe que existe sólo en el servidor, y sólo cuando se carga la página, la formación de la respuesta AJAX o por cualquier otra razón, llamando a la puesta en marcha del intérprete de PHP.

ideas prometedoras, consejos

Si se piensa en el hecho de que un archivo de texto – es el contenido y la estructura de los desarrolladores, archivo PHP – un intérprete de sintaxis más lógica desarrollador y descripción "etiquetado" de HTML, CSS, XML – es más elementos semánticos, pero las normas estáticas regulados. Se puede llegar a la conclusión de que, probablemente, el archivo es el momento de comprar nuevos contenidos, y ella misma debe determinar su calidad y aplicación lógica. Se debe a que la programación aún no está listo para la siguiente etapa de su desarrollo, los archivos ahora son simplemente archivos que el desarrollador crea y define su uso.

El archivo más interesante y prometedora al leer PHP PHP se realiza automáticamente cuando surja la necesidad. Una simple lectura de las líneas de PHP desde un archivo lleva a la creación del objeto, por lo menos en la misma condición en la que se guardó. No es exactamente las ideas habituales, sino porque todo cambia tan rápidamente en el mundo de hoy.