<?php
// setting up PDO
include ('connectDB.php');
include ('auth.php');
$userID = $_SESSION['tblusers_id'];
// prepare all queries...
$favouritSongs = $conn->prepare("SELECT * FROM tblsaved_song WHERE userID = :userID");
$favouritSongs->bindParam(':userID', $userID);
// fetch all artists
$favouritSongs->execute();
$favouriteList=$favouritSongs->fetchAll(PDO::FETCH_ASSOC);
$x=new XMLWriter();
$x->openMemory();
$x->startDocument('1.0','UTF-8');
$x->startElement('music');
foreach ($favouriteList as $element) {
$x->startElement('songtitle');
$x->text($element['songtitle']);
$x->endElement();
$x->startElement('link');
$x->text($element['link']);
$x->endElement();
$x->startElement('genre');
$x->text($element['genre']);
$x->endElement();
$x->startElement('releaseyear');
$x->text($element['releaseyear']);
$x->endElement();
$x->startElement('datesaved');
$x->text($element['datesaved']);
// fetch all albums of this artist
$x->endElement(); // artist
} // foreach $artists
$x->endElement(); // music
$x->endDocument();
$xml = $x->outputMemory();
// now save $xml to a file etc.
header("Content-type: text/xml");
header('Content-Disposition: attachment; filename="exported_playlist.xml"');
print_r ($xml);
?>
嗨,我正在尝试从MySQL数据库导出数据并将它们存储到XML文件中。
一切正常,唯一的问题是所有元素都在一行中。我怎么能修改代码以获得新行中的每个元素。 谢谢。
答案 0 :(得分:0)
根据我理解的解释,您无法缩进xml代码
为了缩进,您可以在代码$xml->setIndent(true);
之后$x->openMemory();
进行缩进。
答案 1 :(得分:-1)
您可以使用以下代码段:
var val = prompt("enter number");
var New = val.split("");
var arr1 = [];
console.log(New);
for (i = New.length - 1; i >= 0; i--) {
arr1 += New[i];
} console.log(arr1);