Comment charger un tableau de retour à partir d'un fichier PHP?

88

J'ai un fichier PHP un fichier de configuration provenant d'un fichier de traduction de message Yii qui contient ceci:

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

Je veux charger ce tableau à partir d'un autre fichier et le stocker dans une variable

J'ai essayé de faire ça mais ça ne marche pas

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

$in est le nom du fichier PHP

Des pensées comment faire cela?

bman
la source
note complémentaire: si vous affectez les résultats de l'inclusion à une variable dans la portée globale, assurez-vous d'utiliser un globalmot-clé pour utiliser la variable dans une fonction.
Utilisateur
3
Il est déconseillé de fermer php-tags ( ?>) dans des fichiers qui ne contiennent pas de code HTML et qui ne produisent rien. Parce que tous les caractères qui suivent seront sortis dans le flux standard ( echoed)
Gherman

Réponses:

14

Renvoyer des valeurs à partir d'un fichier d'inclusion

Nous utilisons cela dans notre CMS. Vous êtes proche, il vous suffit de renvoyer la valeur de cette fonction.

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

Voir l'exemple 5 # ici

Jason
la source
2
Lorsque vous utilisez la valeur de retour de include, vous devez faire très attention à l'utilisation de parenthèses autour de l'argument. Voir php.net/manual/en/function.include.php#example-129
Phil
0

En tant que fichier retournant un tableau, vous pouvez simplement l'assigner dans une variable

Voici l'exemple

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

Production:

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