键/值对在PHP中作为变量



我已经将一个csv文件解析成一个关联数组,它看起来像这样:

array(5) {
[0]=>  array(13) { 
["First Name"]=>string(7) "Name"
["Last Name"]=>string(14) "Last name"
["Login"]=>string(22) "name.lastname"
["Email"]=>string(27) "email"
…

我现在想把每个键的值写入一个带有键名的变量中,例如:

$FirstName = "Name";
$LastName = "Last name";

由于我对编程和php相对较新,我正在努力解决这个问题,我希望你能给我一个提示😊

编辑:这是我如何创建数组:

function csv_to_array($filename='', $delimiter=';')
{
if(!file_exists($filename) || !is_readable($filename))
return FALSE;
$header = NULL;
$data = array();
if (($handle = fopen($filename, 'r')) !== FALSE)
{
while (($row = fgetcsv($handle, 1000, $delimiter)) !== FALSE)
{
if(!$header)
$header = $row;
else
$data[] = array_combine($header, $row);
}
fclose($handle);
}
return $data;
}
$a_csv = csv_to_array($file, ';');

如果你的数组是这样的

array(5) {
[0]=>  array(13) { 
["foo"]=>string(7) "fooValue"
["bar"]=>string(7) "barValue"
,,,
对于动态创建变量,首先应该创建一个循环
foreach ($first_arrays as $first_array)
{
foreach ($first_array as $key => $value) {
$name = str_replace(" ","",$key);  //replace spaces
${$name} = $value;   //create PHP variable with your key
}
}
echo $foo; // will be fooValue
// here you have all variables that named by your array keys

最后的解决方案是使用foreach遍历数组,只调用键并分配它们:

foreach ($csv as $value){
$FirstName = $value["First"];
$LastName = $value["Last"];
...
}

我显然是在让事情变得更困难。谢谢你的输入:)

相关内容

  • 没有找到相关文章

最新更新