PHP-从CSV创建数组,然后回显值
我试图将CSV字符串解析为多维数组。我正在使用以下代码来执行此操作PHP-从CSV创建数组,然后回显值,php,csv,Php,Csv,我试图将CSV字符串解析为多维数组。我正在使用以下代码来执行此操作 public function exportPartsAuthority($fileArray) { foreach ($fileArray as $filename => $fileContent) { $lines = explode("\n", $fileContent); $formatting = explode(",", $lines[0]);
public function exportPartsAuthority($fileArray)
{
foreach ($fileArray as $filename => $fileContent) {
$lines = explode("\n", $fileContent);
$formatting = explode(",", $lines[0]);
unset($lines[0]);
$results = array();
foreach ( $lines as $line ) {
$parsedLine = str_getcsv( $line, ',' );
$result = array();
foreach ( $formatting as $index => $caption ) {
if(isset($parsedLine[$index])) {
$result[$formatting[$index]] = trim($parsedLine[$index]);
} else {
$result[$formatting[$index]] = '';
}
}
$results[] = $result;
}
$var_str = var_export($results, true);
$var = "<?php\n\n\$$values = $var_str;\n\n?>";
file_put_contents('/home/apndev/public_html/output.txt', $var);
}
}
当我尝试回显$results['Vendor SKU']或var_转储它时。。即使我看到上面设置了一个值,结果也是空的。我还注意到顶部有一个语法错误(“$=array”)
也就是说,我最终只是尝试从CSV获取值,因为其中一些值将用于向第三方供应商发送订单信息
有人能给我指出如何修正输出的正确方向,以便我能够正确地回显这些值吗
谢谢 简单,使用预设的CSV读取方法:
$fp = fopen('data.csv', 'r');
$rows = array();
while (($row = fgetcsv($fp)) !== false)
$rows[] = $row;
fclose($fp);
$rows
将包含data.csv
的所有数据作为二维数组
有关更多信息,请参阅。简单,使用预设的CSV读取方法:
$fp = fopen('data.csv', 'r');
$rows = array();
while (($row = fgetcsv($fp)) !== false)
$rows[] = $row;
fclose($fp);
$rows
将包含data.csv
的所有数据作为二维数组
有关更多信息,请参阅。简单,使用预设的CSV读取方法:
$fp = fopen('data.csv', 'r');
$rows = array();
while (($row = fgetcsv($fp)) !== false)
$rows[] = $row;
fclose($fp);
$rows
将包含data.csv
的所有数据作为二维数组
有关更多信息,请参阅。简单,使用预设的CSV读取方法:
$fp = fopen('data.csv', 'r');
$rows = array();
while (($row = fgetcsv($fp)) !== false)
$rows[] = $row;
fclose($fp);
$rows
将包含data.csv
的所有数据作为二维数组
有关更多信息,请参阅。使用内置的php函数解析csv文件,而不是重新发明轮子
str_getcsv
手册页上有一个很好的例子,基本上满足了您的需求:
$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);
}
print_r($data);
使用内置的php函数解析csv文件,而不是重新发明轮子
str_getcsv
手册页上有一个很好的例子,基本上满足了您的需求:
$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);
}
print_r($data);
使用内置的php函数解析csv文件,而不是重新发明轮子
str_getcsv
手册页上有一个很好的例子,基本上满足了您的需求:
$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);
}
print_r($data);
使用内置的php函数解析csv文件,而不是重新发明轮子
str_getcsv
手册页上有一个很好的例子,基本上满足了您的需求:
$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);
}
print_r($data);