plugin example esta donde appserv php ini

example - PHP parse_ini_file() rendimiento?



php.ini wordpress (5)

De acuerdo con esta antigua entrada de blog recuperada de archivos web.

De más rápido a más lento:

  1. Arreglos serializados
  2. Código PHP sencillo
  3. Archivos INI
  4. Archivos XML
  5. Archivos YAML

EDITAR (08/02/2012)

Si APC u otro acelerador está disponible en el servidor, los archivos PHP simples serían los más rápidos debido a que se analizarán solo una vez y se guardarán en la memoria para su uso posterior.

Sé que algunas personas almacenan la configuración en un archivo .ini y obtienen los valores con parse_ini_file() en PHP. Sin ejecutar pruebas, tengo curiosidad por el rendimiento.

¿Sabe si el caché de opcode puede almacenar en caché cualquiera de este tipo de cosas si la configuración está en un archivo ini?


La parse_ini_file incorporada parse_ini_file se implementa en C. Esto lo hace bastante rápido.


Para la otra parte de la pregunta: si el caché de opcode almacena en caché los archivos ini. Al momento de escribir, con mi versión PHP 5.3.5, el caché de APC no lo hace de forma automática, pero puede asegurarse de que APC almacene en caché los archivos ini agregando una función como la siguiente y utilícela para analizar los archivos ini :

function parse_ini_file_ext ($file, $sections = null) { ob_start(); include $file; $str = ob_get_contents(); ob_end_clean(); return parse_ini_string($str, $sections); }

Luego, los archivos ini son almacenados en caché por APC. Medido con un simple punto de referencia de microtiempo, esto también es más rápido que leer los archivos ini directamente.


Será mucho más rápido si no almacena en caché el archivo ini. Todos los expertos pueden creer que esto es cierto.


Siempre tuve la sospecha de que parse_ini_file es extremadamente lento, y que el almacenamiento de variables en arreglos en archivos PHP es más rápido. Pero hay un artículo de 2004 que dice lo contrario:

Y, por último, probamos el almacenamiento de los parámetros de configuración en un archivo INI o en un archivo PHP como una matriz asociativa. Encontramos que almacenar en un archivo INI y usar parse_ini_file () es más rápido que analizar un archivo PHP.

No lo creeré por completo hasta que lo pruebe por mi cuenta cuando llegue a algún momento. Pero el artículo (y la revista) parecen lo suficientemente sólidos como para tomarse en serio.