cuaderno de campo

anotaciones

Menú
  • casa
    • cocina
      • pan
      • verdura
    • dinou del carrer nou
    • nadal : una carta
    • plano
  • huerto
    • instrucciones sobre el huerto
    • huerto del año 2022
  • humanidades
    • fonoteca
      • Noches en Poderna
      • El canto de las aves
    • galería
    • mala lluna
    • rutas fuera
    • umbrario
    • El misterio de Sant Mena
  • jardín
    • instrucciones sobre el jardín
    • exterior
    • interior
    • viveros
  • juego
    • listado de juegos
  • linux
    • bash
    • sistema operativo
    • ssh
  • web
    • apache
    • css
    • html5
    • javascript
    • mysql
    • php
Menú

php desde la línea de comandos

Publicado el 29 de mayo de 201726 de febrero de 2021 por ernesto

  • entorno de ejecución
  • ejecución de php
  • módulos de php

entorno de ejecución

antes de ejecutar php desde la línea de comandos, es necesario conocer su entorno de ejecución:

php --ini
Configuration File (php.ini) Path: /etc/php5/cli
Loaded Configuration File: /etc/php5/cli/php.ini
Scan for additional .ini files in: /etc/php5/cli/conf.d
Additional .ini files parsed: /etc/php5/cli/conf.d/05-opcache.ini,
/etc/php5/cli/conf.d/10-pdo.ini,
/etc/php5/cli/conf.d/20-gd.ini,
/etc/php5/cli/conf.d/20-json.ini,
/etc/php5/cli/conf.d/20-mcrypt.ini,
/etc/php5/cli/conf.d/20-mysql.ini,
/etc/php5/cli/conf.d/20-mysqli.ini,
/etc/php5/cli/conf.d/20-pdo_mysql.ini,
/etc/php5/cli/conf.d/20-readline.ini,
/etc/php5/cli/conf.d/20-tidy.ini

ejecución de php

la opción -c permite usar un archivo de configuración distinto al que se declara en php.ini (Configuration File Path):

php -c /etc/php5/apache2/php.ini

y la opción -f ejecuta el código php del archivo indicado:

php -f /media/web/ejemplo.php

de esta manera,

php -c /etc/php5/apache2/php.ini -f /media/web/ejemplo.php

php ejecuta el archivo ejemplo.php con la configuración de /etc/php5/apache2/php.ini. luego, si se quieren emplear los archivos adicionales de otro directorio (Scan for additional .ini files), hay que tener en cuenta que

The directories searched are set by a compile time option and, optionally, by an environment variable at run time: more information can be found in the installation guide.

esto es,

  • durante la compilación de php, debe aplicarse la opción:

    --with-config-file-scan-dir=/etc/php5/apache2/conf.d

  • durante la ejecución, es necesario definir la variable de entorno PHP_INI_SCAN_DIR:

    In PHP 5.2.0 and later, the scan directory can then be overridden at run time by setting the PHP_INI_SCAN_DIR environment variable.

    para ello,

    1. en la línea de comandos, antes de ejecutar php, se exporta la variable en cuestión:

      export PHP_INI_SCAN_DIR=/etc/php5/apache2/conf.d

      de esta manera, el cambio se mantendrá en el entorno mientras dure la sesión de bash.

    2. dentro del propio código php,

      putenv("PHP_INI_SCAN_DIR=/etc/php5/apache2/conf.d");

      en este caso, el cambio sólo se mantendrá durante el tiempo de ejecución.

módulos de php

si se echa en falta algún módulo en el entorno de ejecución, hay que habilitarlo:

sudo php5enmod imagick

hecho esto, el archivo 20-imagick.ini debería encontrarse entre las configuraciones de /etc/php5/cli/conf.d:

ls /etc/php5/cli/conf.d
05-opcache.ini  20-gd.ini       20-json.ini    20-mysqli.ini  20-pdo_mysql.ini  20-tidy.ini
10-pdo.ini      20-imagick.ini  20-mcrypt.ini  20-mysql.ini   20-readline.ini

y el módulo imagick entre los módulos de php:

php -m
[…]
hash
iconv
imagick
json
libxml
[…]

Etiquetado como export, ls, php, php.ini, php5, php5enmod, putenv
  • php: instalación y configuración

    sudo apt-get install php5 sudo a2enmod php5 Enabling module php5. To activate the new configuration,…

  • constante en heredoc

    una constante no devuelve su valor dentro de la sintaxis heredoc: define("C", "constante"); echo <<<HTML…

  • imagick: instalación vía pecl

    sudo apt-get install php-pear sudo apt-get install php5-dev sudo apt-get install libmagickwand-dev libmagickcore-dev sudo pecl…

RSS rutas fuera

  • Esta tarde, Criptozoología con Vicente Fuentes 23 de marzo de 2023 Javier Resines
  • Beats and yelling from: Yaaroth, Verminous Serpent, Svraoz 22 de marzo de 2023 Hate Meditations
  • Xerrada: La importància de les llavors locals 22 de marzo de 2023 moon
  • Beats and yelling from: Cromlech, Contrarian, Skrying Mirror 21 de marzo de 2023 Hate Meditations
  • Necropolis #62 – On Burzum (Band Focus) 19 de marzo de 2023 Hate Meditations
  • Undead – Putrefactio (2023) 19 de marzo de 2023 Brett Stevens
  • The ambient hut: Hole Dweller 19 de marzo de 2023 Hate Meditations
  • Review – Death Metal 17 de marzo de 2023 Hate Meditations
  • Presentación de “Criptozoologia en España” en Madrid 16 de marzo de 2023 Javier Resines

Categorías

apache bash casa cocina corral css exterior fonoteca galería html5 huerto humanidades humanidades digitales interior jardín javascript juego linux mysql pan php repostería sistema operativo ssh verdura web

Archivo

cuaderno de campo 2011-2023