假设我有一个数组,像这样:
$foo = array('first' => '1st',
'second' => '2nd',
'third' => '3rd');
我该如何从数组中获取键并将它们变成自己的变量?例如,数组$foo
将变为:
$first = '1st';
$second = '2nd';
$third = '3rd';
我之所以提出这个问题,是因为我正在创建一个MVC框架来帮助我的面向对象编程,我希望用户可以通过将变量传递给View加载函数,从而在模板中使用变量,而不必知道数组的名称。
例如:
$array = array('title' => 'My blog!' [...]);
$this->load->view('view.php', $array);
view.php:
echo $title;
输出:
我的博客!
$info = array('coffee', 'brown', 'caffeine'); list($drink, $color, $power) = $info;
- user4494077$var = $row['var']
)。我只是这样做了(多年来)。我发现唯一的限制是在字符串中输出它们有点困难...echo "The var is " . $row['var'];
与echo "The var is $var";
- jpgerbextract()
是有正确的时间和地点的。我正在删除我的评论。话虽如此,一些IDE可能会难以识别由extract()
生成的变量,并对其认为是“未声明的变量”给出错误的标志。自制MVC技术($this->load->view(...)
并不是一个罕见的方法(正如Ravinder所说,这正是CodeIgniter所做的)。这只意味着所有变量都需要在视图文件的顶部进行“文档化”。 - mickmackusa