根据数组的内容创建数组?

时间:2014-10-16 05:34:36

标签: php arrays extract

我从我放入数组的网站中提取数据。基本上,它就像:

$lines = array(Ginza, Marunouchi, Hibiya, Tozai, Chiyoda, Yurakucho)

如果我可以根据这些名称创建数组,那将是最方便的。 所以,例如,我以后可以这样做:

var_dump($Yurakucho);

最终,我将循环遍历$行以根据其内容提取数据,生成一个file_get_contents,其行如:

$info = '?rdf:type=odpt:StationTimetable&odpt:station=odpt.Station:TokyoMetro.Yurakucho.Heiwadai';

其中'Yurakucho'来自$ line,'Heiwadai'来自$ Yurakucho。 我试过了$$lines = array();,这不起作用。我可以使用extract($ lines)来创建数组名吗?

非常感谢你的时间。

3 个答案:

答案 0 :(得分:0)

使用array_combine。它可以组合两个数组,一个是其他数组的键。 我想你可以在这个场景中使用这个数组函数。

$lines = array(Ginza, Marunouchi, Hibiya, Tozai, Chiyoda, Yurakucho);
$some_values=array(abc,pqr,sdf,hjk,klj,Heiwadai);
$result=array_combine($lines,$some_values);

print_r($result);

然后使用此数组的键和值

或使用

extract($result);

答案 1 :(得分:0)

这应该这样做:

$lines = array('Ginza', 'Marunouchi', 'Hibiya', 'Tozai', 'Chiyoda', 'Yurakucho');
$lines = array_fill_keys($lines, array());
extract($lines);

var_dump($Ginza)应该为您提供array(0) { }

答案 2 :(得分:0)

以下代码可以解决您的问题

$lines = array("Ginza" => array(1,2,3),
               "Marunouchi"  => array(4,5,6),
               "Hibiya" => "test3",
               "Tozai" => "test4",
               "Chiyoda" => "test5",
               "Yurakucho" => array("Heiwadai", "test6"));
extract($lines);
var_dump($lines);
var_dump($Yurakucho);