es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Agregar una matriz de PHP a un archivo de PHP utilizando la línea de comando de Linux.

Tengo un archivo php y necesito agregar un array a él usando la CLI de Linux. Asumo que sed es la herramienta para esto, pero no sé cómo hacerlo ya que no estoy muy familiarizado con Linux y php.

Ejemplo de config.php

<?php
$CONFIG = array (
  'installed' => true,
  'instanceid' => 'sdsdfsfdsdf',
  'ldapProviderFactory' => 'OCA\User_LDAP\LDAPProviderFactory',
);

Array que debe agregarse

array (
  'class' => '\OC\Files\ObjectStore\S3',
  'arguments' =>
  array (
    'val1' => 'val1x',
    'val2' => 'val1x',
  ),
),

También pensé que podría usar cat para agregarlo, pero causaría un error de sintaxis ya que el archivo debe terminar con );

El archivo final se vería así:

<?php
$CONFIG = array (
  'installed' => true,
  'instanceid' => 'sdsdfsfdsdf',
  'ldapProviderFactory' => 'OCA\User_LDAP\LDAPProviderFactory',
  array (
    'class' => '\OC\Files\ObjectStore\S3',
    'arguments' =>
    array (
      'val1' => 'val1x',
      'val2' => 'val1x',
    ),
  ),
);
Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Puedes usar sed para agregar el array al archivo config.php. El comando se vería así:


    sed -i '$ s/);/ array (\n \x27class\x27 =\x3E \x27\\OC\\Files\\ObjectStore\\S3\x27,\n \x27arguments\x27 =\x3E\n array (\n \x27val1\x27 =\x3E \x27val1x\x27,\n \x27val2\x27 =\x3E \x27val1x\x27,\n ),\n ),\n);/' config.php

    Este comando agregará el array al final del archivo config.php.

Comments are closed.