-5

如果我有一个结构正确的数组存储在这样的文件中:

数组.php

<?php  

return array(

  0=>"a",
  "x"=>$timestamp,
  "y"=>array("nested"=>array(1,2,3)),  
  "z"=>function() use (&$VAR) { return $VAR; },

);  

?>

我应该使用什么样的正则表达式来获得这样的数组:

$array=file_get_contents("array.php"); // a string ready to be processed

/* 某种神奇的正则表达式 */

$array[0]=>'"a"';
$array["x"]=>'$timestamp';
$array["y"]=>'array("nested"=>array(1,2,3))';  
$array["z"]='function() use (&$VAR) { return $VAR; }';

?


更新 :: 我需要 $array 包含这样的值,所以我可以有选择地调用 eval() 何时何地我需要它,像这样

$timestamp="2010-01-01 00:00:00";
$dinamicValue=eval(" return ".$array["x"]."; "); // now is "2010-01-01 00:00:00"

$timestamp="2012-01-01 00:00:00";
$dinamicValue=eval(" return ".$array["x"]."; "); // now is "2012-01-01 00:00:00"

它将用于某种模板系统,这里是一个模板演示codepad.org/xt56tXnf,其中所有像 $DINAMIC_VALUE_* 这样的变量都应该被动态定义。

4

1 回答 1

1

你可以通过做同样的事情

$timestamp="2013-04-24 12:44:04";  
$userid=4;

$array=include('array.php');

要获得部分,您可以实现 array.php 以包含多个条件返回;

于 2013-06-14T05:37:17.907 回答