PHP-用PHP将CSV文件转XML
导出一份CSV格式的数据文件, 但我想展示在Web上,只会简单的读取XML文件方式,求教各位用PHP将CSV格式文件转成XML的方法。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
导出一份CSV格式的数据文件, 但我想展示在Web上,只会简单的读取XML文件方式,求教各位用PHP将CSV格式文件转成XML的方法。
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(1)
CSV TO XML:
/**
* Converts a CSV file to a simple XML file
*
* @param string $file
* @param string $container
* @param string $rows
* @return string
*/
function csv2xml($file, $container = 'data', $rows = 'row')
{
$r = "<{$container}>n";
$row = 0;
$cols = 0;
$titles = array();
$handle = @fopen($file, 'r');
if (!$handle) return $handle;
while (($data = fgetcsv($handle, 1000, ',')) !== FALSE)
{
if ($row > 0) $r .= "t<{$rows}>n";
if (!$cols) $cols = count($data);
for ($i = 0; $i < $cols; $i++)
{
if ($row == 0)
{
$titles[$i] = $data[$i];
continue;
}
$r .= "tt<{$titles[$i]}>";
$r .= $data[$i];
$r .= "</{$titles[$i]}>n";
}
if ($row > 0) $r .= "t</{$rows}>n";
$row++;
}
fclose($handle);
$r .= "</{$container}>";
return $r;
}
XML TO CSV:
使用
SimpleXML
扩展:$filexml='cars.xml';
if (file_exists($filexml)) {
$xml = simplexml_load_file($filexml);
$f = fopen('cars.csv', 'w');
foreach ($xml->car as $car) {
fputcsv($f, get_object_vars($car),',','"');
}
fclose($f);
}