PHP会话数组变量到XML

PHP会话数组变量到XML,php,xml,session,Php,Xml,Session,我有一堆会话变量,我正试图将它们导出到XML文件中。客户详细信息很好,因为它们不是foreach循环的一部分。然而,我客户的订单是foreach循环的一部分 会话变量$\u SESSION['invoice']在cart.php中定义。需要检索$\u会话['invoice']数组中的每个值并将其放入XML中 e、 g xml.php代码: $_SESSION['invoice'][$comic_id]=$name . " " . $qty . " $" . $price . " $" . $co

我有一堆会话变量,我正试图将它们导出到XML文件中。客户详细信息很好,因为它们不是foreach循环的一部分。然而,我客户的订单是foreach循环的一部分

会话变量$\u SESSION['invoice']在cart.php中定义。需要检索$\u会话['invoice']数组中的每个值并将其放入XML中

e、 g

xml.php代码:

$_SESSION['invoice'][$comic_id]=$name . " " . $qty . " $" . $price . " $" . $cost;
<?php
if(!isset($_SESSION)) {
     session_start();
}
foreach ($_SESSION['invoice'] as $value);

$test_array = array (
  $_SESSION['firstname'] => 'firstname',
  $_SESSION['lastname'] => 'lastname',
  $_SESSION['email'] => 'email',
  $_SESSION['addressline1'] => 'addressline1',
  $_SESSION['towncity'] => 'towncity',
  $_SESSION['postcode'] => 'postcode',
  'order' => array (
  $_SESSION['total'] => 'total',
  $_SESSION['invoice']  => 'order',
  ),
);
$xml = new SimpleXMLElement('<customer/>');
array_walk_recursive($test_array, array ($xml, 'addChild'));
print $xml->asXML();

用这段代码可以表示字符串。尝试调试创建的值,如:

    echo '<pre>'.print_r($_SESSION['invoice'][$comic_id], 1).'</pre>';
    echo '<pre>'.print_r($_SESSION['invoice'], 1).'</pre>';

但有一点值得注意。不建议您参加此类发票处理的会议

$order=json_编码($_会话['invoice'])

这种方法行不通,因为所有连接的值/行都不会从数组中回调。
    $_SESSION['invoice'][$comic_id]=$name . " " . $qty . " $" . $price . " $" . $cost;
    echo '<pre>'.print_r($_SESSION['invoice'][$comic_id], 1).'</pre>';
    echo '<pre>'.print_r($_SESSION['invoice'], 1).'</pre>';
    $_SESSION['invoice'][$comic_id]['firstname'] = 'Firstname';
    $_SESSION['invoice'][$comic_id]['price'] = $myPrice';
    // and so on...