XML_Query2XML
[ class tree: XML_Query2XML ] [ index: XML_Query2XML ] [ all elements ]

Source for file case04_debug.php

Documentation is available at case04_debug.php

  1. <?php
  2. require_once('XML/Query2XML.php');
  3. require_once('DB.php');
  4. $query2xml XML_Query2XML::factory(DB::connect('mysql://root@localhost/Query2XML_Tests'));
  5.  
  6. require_once('Log.php');
  7. $debugLogger &Log::factory('file''case04.log''Query2XML');
  8. $query2xml->enableDebugLog($debugLogger);
  9.  
  10. $query2xml->startProfiling();
  11.  
  12.  
  13. $dom $query2xml->getXML(
  14.     "SELECT
  15.         *
  16.      FROM
  17.         artist",
  18.     array(
  19.         'rootTag' => 'MUSIC_LIBRARY',
  20.         'rowTag' => 'ARTIST',
  21.         'idColumn' => 'artistid',
  22.         'elements' => array(
  23.             'NAME' => 'name',
  24.             'BIRTH_YEAR' => 'birth_year',
  25.             'BIRTH_YEAR_TWO_DIGIT' => "#firstTwoChars()",
  26.             'BIRTH_PLACE' => 'birth_place',
  27.             'GENRE' => 'genre',
  28.             'albums' => array(
  29.                 'sql' => array(
  30.                     'data' => array(
  31.                         'artistid'
  32.                     ),
  33.                     'query' => 'SELECT * FROM album WHERE artist_id = ?'
  34.                 ),
  35.                 'sql_options' => array(
  36.                     'uncached'        => true,
  37.                     'merge_selective' => array('genre')
  38.                 ),
  39.                 'rootTag' => '',
  40.                 'rowTag' => 'ALBUM',
  41.                 'idColumn' => 'albumid',
  42.                 'elements' => array(
  43.                     'TITLE' => 'title',
  44.                     'PUBLISHED_YEAR' => 'published_year',
  45.                     'COMMENT' => 'comment',
  46.                     'GENRE' => 'genre'
  47.                 ),
  48.                 'attributes' => array(
  49.                     'ALBUMID' => 'albumid'
  50.                 )
  51.             )
  52.         ),
  53.         'attributes' => array(
  54.             'ARTISTID' => 'artistid',
  55.             'MAINTAINER' => ':Lukas Feiler'
  56.         )
  57.     )
  58. );
  59.  
  60. header('Content-Type: application/xml');
  61. echo '<?xml version="1.0" encoding="UTF-8"?>' "\n";
  62.  
  63. require_once('XML/Beautifier.php');
  64. $beautifier = new XML_Beautifier();
  65. print $beautifier->formatString($dom->saveXML());
  66.  
  67. require_once('File.php');
  68. $fp = new File();
  69. $fp->write('case04.profile'$query2xml->getProfile()FILE_MODE_WRITE);
  70.  
  71. function firstTwoChars($record)
  72. {
  73.     return substr($record['birth_year']2);
  74. }
  75. ?>

Documentation generated on Mon, 11 Mar 2019 14:48:19 -0400 by phpDocumentor 1.4.4. PEAR Logo Copyright © PHP Group 2004.