¿Cómo cargar la matriz de retorno desde un archivo PHP?

88

Tengo un archivo PHP, un archivo de configuración que proviene de un archivo de traducción de mensajes de Yii que contiene esto:

<?php
 return array(
  'key' => 'value'
  'key2' => 'value'
 );
?>

Quiero cargar esta matriz desde otro archivo y almacenarla en una variable

Traté de hacer esto pero no funciona

function fetchArray($in)
{
   include("$in");
}

$in es el nombre del archivo PHP

¿Alguna idea de cómo hacer esto?

bman
fuente
nota al margen: si está asignando los resultados de la inclusión a una variable en el ámbito global, asegúrese de utilizar la globalpalabra clave para utilizar la variable dentro de una función.
Usuario
3
?>No se recomienda cerrar php-tags ( ) en archivos que no contienen html y que en realidad no generan nada. Porque todos los caracteres que siguen a continuación se enviarán a la transmisión estándar ( echoed)
Gherman

Respuestas:

14

Devolver valores de un archivo de inclusión

Usamos esto en nuestro CMS. Estás cerca, solo necesitas devolver el valor de esa función.

function fetchArray($in)
{
  if(is_file($in)) 
       return include $in;
  return false
}

Vea el ejemplo 5 # aquí

Jason
fuente
2
Cuando use el valor de retorno de include, debe tener mucho cuidado al usar paréntesis alrededor del argumento. Ver php.net/manual/en/function.include.php#example-129
Phil
0

Como el archivo que devuelve una matriz, simplemente puede asignarlo a una variable

Aqui esta el ejemplo

$MyArray = include($in);
print_r($MyArray);

Salida:

Array
(
    [key] => value
    [key2] => value
)
Nishad Up
fuente