original_string: protected function renderDataTableMap($table, $array, $prefixLines = "")
      {
          // CASE 1
          //array
          //  'day1' => string '14' (length=2)
          //  'day2' => string '6' (length=1)
          $firstTable = current($array);
          if (!is_array($firstTable)) {
              $xml = '';
              $nameDescriptionAttribute = $table->getKeyName();
              foreach ($array as $valueAttribute => $value) {
                  if (empty($value)) {
                      $xml .= $prefixLines . "\t<result $nameDescriptionAttribute=\"$valueAttribute\" />\n";
                  } elseif ($value instanceof Map) {
                      $out = $this->renderTable($value, true);
                      //TODO somehow this code is not tested, cover this case
                      $xml .= "\t<result $nameDescriptionAttribute=\"$valueAttribute\">\n$out</result>\n";
                  } else {
                      $xml .= $prefixLines . "\t<result $nameDescriptionAttribute=\"$valueAttribute\">" . self::formatValueXml($value) . "</result>\n";
                  }
              }
              return $xml;
          }
  
          $subTables = $table->getDataTables();
          $firstTable = current($subTables);
  
          // CASE 2
          //array
          //  'day1' =>
          //    array
          //      'nb_uniq_visitors' => string '18'
          //      'nb_visits' => string '101'
          //  'day2' =>
          //    array
          //      'nb_uniq_visitors' => string '28'
          //      'nb_visits' => string '11'
          if ($firstTable instanceof Simple) {
              $xml = '';
              $nameDescriptionAttribute = $table->getKeyName();
              foreach ($array as $valueAttribute => $dataTableSimple) {
                  if (count($dataTableSimple) == 0) {
                      $xml .= $prefixLines . "\t<result $nameDescriptionAttribute=\"$valueAttribute\" />\n";
                  } else {
                      if (is_array($dataTableSimple)) {
                          $dataTableSimple = "\n" . $this->renderDataTableSimple($dataTableSimple, $prefixLines . "\t") . $prefixLines . "\t";
                      }
                      $xml .= $prefixLines . "\t<result $nameDescriptionAttribute=\"$valueAttribute\">" . $dataTableSimple . "</result>\n";
                  }
              }
              return $xml;
          }
  
          // CASE 3
          //array
          //  'day1' =>
          //    array
          //      0 =>
          //        array
          //          'label' => string 'phpmyvisites'
          //          'nb_uniq_visitors' => int 11
          //          'nb_visits' => int 13
          //      1 =>
          //        array
          //          'label' => string 'phpmyvisits'
          //          'nb_uniq_visitors' => int 2
          //          'nb_visits' => int 2
          //  'day2' =>
          //    array
          //      0 =>
          //        array
          //          'label' => string 'piwik'
          //          'nb_uniq_visitors' => int 121
          //          'nb_visits' => int 130
          //      1 =>
          //        array
          //          'label' => string 'piwik bis'
          //          'nb_uniq_visitors' => int 20
          //          'nb_visits' => int 120
          if ($firstTable instanceof DataTable) {
              $xml = '';
              $nameDescriptionAttribute = $table->getKeyName();
              foreach ($array as $keyName => $arrayForSingleDate) {
                  $dataTableOut = $this->renderDataTable($arrayForSingleDate, $prefixLines . "\t");
                  if (empty($dataTableOut)) {
                      $xml .= $prefixLines . "\t<result $nameDescriptionAttribute=\"$keyName\" />\n";
                  } else {
                      $xml .= $prefixLines . "\t<result $nameDescriptionAttribute=\"$keyName\">\n";
                      $xml .= $dataTableOut;
                      $xml .= $prefixLines . "\t</result>\n";
                  }
              }
              return $xml;
          }
  
          if ($firstTable instanceof Map) {
              $xml = '';
              $tables = $table->getDataTables();
              $nameDescriptionAttribute = $table->getKeyName();
              foreach ($tables as $valueAttribute => $tableInArray) {
                  $out = $this->renderTable($tableInArray, true, $prefixLines . "\t");
                  $xml .= $prefixLines . "\t<result $nameDescriptionAttribute=\"$valueAttribute\">\n" . $out . $prefixLines . "\t</result>\n";
              }
              return $xml;
          }
  
          return '';
      }
code: protected function renderDataTableMap($table, $array, $prefixLines = "")
      {
          // CASE 1
          //array
          //  'day1' => string '14' (length=2)
          //  'day2' => string '6' (length=1)
          $firstTable = current($array);
          if (!is_array($firstTable)) {
              $xml = '';
              $nameDescriptionAttribute = $table->getKeyName();
              foreach ($array as $valueAttribute => $value) {
                  if (empty($value)) {
                      $xml .= $prefixLines . "\t<result $nameDescriptionAttribute=\"$valueAttribute\" />\n";
                  } elseif ($value instanceof Map) {
                      $out = $this->renderTable($value, true);
                      //TODO somehow this code is not tested, cover this case
                      $xml .= "\t<result $nameDescriptionAttribute=\"$valueAttribute\">\n$out</result>\n";
                  } else {
                      $xml .= $prefixLines . "\t<result $nameDescriptionAttribute=\"$valueAttribute\">" . self::formatValueXml($value) . "</result>\n";
                  }
              }
              return $xml;
          }
  
          $subTables = $table->getDataTables();
          $firstTable = current($subTables);
  
          // CASE 2
          //array
          //  'day1' =>
          //    array
          //      'nb_uniq_visitors' => string '18'
          //      'nb_visits' => string '101'
          //  'day2' =>
          //    array
          //      'nb_uniq_visitors' => string '28'
          //      'nb_visits' => string '11'
          if ($firstTable instanceof Simple) {
              $xml = '';
              $nameDescriptionAttribute = $table->getKeyName();
              foreach ($array as $valueAttribute => $dataTableSimple) {
                  if (count($dataTableSimple) == 0) {
                      $xml .= $prefixLines . "\t<result $nameDescriptionAttribute=\"$valueAttribute\" />\n";
                  } else {
                      if (is_array($dataTableSimple)) {
                          $dataTableSimple = "\n" . $this->renderDataTableSimple($dataTableSimple, $prefixLines . "\t") . $prefixLines . "\t";
                      }
                      $xml .= $prefixLines . "\t<result $nameDescriptionAttribute=\"$valueAttribute\">" . $dataTableSimple . "</result>\n";
                  }
              }
              return $xml;
          }
  
          // CASE 3
          //array
          //  'day1' =>
          //    array
          //      0 =>
          //        array
          //          'label' => string 'phpmyvisites'
          //          'nb_uniq_visitors' => int 11
          //          'nb_visits' => int 13
          //      1 =>
          //        array
          //          'label' => string 'phpmyvisits'
          //          'nb_uniq_visitors' => int 2
          //          'nb_visits' => int 2
          //  'day2' =>
          //    array
          //      0 =>
          //        array
          //          'label' => string 'piwik'
          //          'nb_uniq_visitors' => int 121
          //          'nb_visits' => int 130
          //      1 =>
          //        array
          //          'label' => string 'piwik bis'
          //          'nb_uniq_visitors' => int 20
          //          'nb_visits' => int 120
          if ($firstTable instanceof DataTable) {
              $xml = '';
              $nameDescriptionAttribute = $table->getKeyName();
              foreach ($array as $keyName => $arrayForSingleDate) {
                  $dataTableOut = $this->renderDataTable($arrayForSingleDate, $prefixLines . "\t");
                  if (empty($dataTableOut)) {
                      $xml .= $prefixLines . "\t<result $nameDescriptionAttribute=\"$keyName\" />\n";
                  } else {
                      $xml .= $prefixLines . "\t<result $nameDescriptionAttribute=\"$keyName\">\n";
                      $xml .= $dataTableOut;
                      $xml .= $prefixLines . "\t</result>\n";
                  }
              }
              return $xml;
          }
  
          if ($firstTable instanceof Map) {
              $xml = '';
              $tables = $table->getDataTables();
              $nameDescriptionAttribute = $table->getKeyName();
              foreach ($tables as $valueAttribute => $tableInArray) {
                  $out = $this->renderTable($tableInArray, true, $prefixLines . "\t");
                  $xml .= $prefixLines . "\t<result $nameDescriptionAttribute=\"$valueAttribute\">\n" . $out . $prefixLines . "\t</result>\n";
              }
              return $xml;
          }
  
          return '';
      }
code_tokens: protected function renderDataTableMap ( $ table , $ array , $ prefixLines = "" ) { // CASE 1 //array //  'day1' => string '14' (length=2) //  'day2' => string '6' (length=1) $ firstTable = current ( $ array ) ; if ( ! is_array ( $ firstTable ) ) { $ xml = '' ; $ nameDescriptionAttribute = $ table -> getKeyName ( ) ; foreach ( $ array as $ valueAttribute => $ value ) { if ( empty ( $ value ) ) { $ xml .= $ prefixLines . "\t<result $nameDescriptionAttribute=\"$valueAttribute\" />\n" ; } elseif ( $ value instanceof Map ) { $ out = $ this -> renderTable ( $ value , true ) ; //TODO somehow this code is not tested, cover this case $ xml .= "\t<result $nameDescriptionAttribute=\"$valueAttribute\">\n$out</result>\n" ; } else { $ xml .= $ prefixLines . "\t<result $nameDescriptionAttribute=\"$valueAttribute\">" . self :: formatValueXml ( $ value ) . "</result>\n" ; } } return $ xml ; } $ subTables = $ table -> getDataTables ( ) ; $ firstTable = current ( $ subTables ) ; // CASE 2 //array //  'day1' => //    array //      'nb_uniq_visitors' => string '18' //      'nb_visits' => string '101' //  'day2' => //    array //      'nb_uniq_visitors' => string '28' //      'nb_visits' => string '11' if ( $ firstTable instanceof Simple ) { $ xml = '' ; $ nameDescriptionAttribute = $ table -> getKeyName ( ) ; foreach ( $ array as $ valueAttribute => $ dataTableSimple ) { if ( count ( $ dataTableSimple ) == 0 ) { $ xml .= $ prefixLines . "\t<result $nameDescriptionAttribute=\"$valueAttribute\" />\n" ; } else { if ( is_array ( $ dataTableSimple ) ) { $ dataTableSimple = "\n" . $ this -> renderDataTableSimple ( $ dataTableSimple , $ prefixLines . "\t" ) . $ prefixLines . "\t" ; } $ xml .= $ prefixLines . "\t<result $nameDescriptionAttribute=\"$valueAttribute\">" . $ dataTableSimple . "</result>\n" ; } } return $ xml ; } // CASE 3 //array //  'day1' => //    array //      0 => //        array //          'label' => string 'phpmyvisites' //          'nb_uniq_visitors' => int 11 //          'nb_visits' => int 13 //      1 => //        array //          'label' => string 'phpmyvisits' //          'nb_uniq_visitors' => int 2 //          'nb_visits' => int 2 //  'day2' => //    array //      0 => //        array //          'label' => string 'piwik' //          'nb_uniq_visitors' => int 121 //          'nb_visits' => int 130 //      1 => //        array //          'label' => string 'piwik bis' //          'nb_uniq_visitors' => int 20 //          'nb_visits' => int 120 if ( $ firstTable instanceof DataTable ) { $ xml = '' ; $ nameDescriptionAttribute = $ table -> getKeyName ( ) ; foreach ( $ array as $ keyName => $ arrayForSingleDate ) { $ dataTableOut = $ this -> renderDataTable ( $ arrayForSingleDate , $ prefixLines . "\t" ) ; if ( empty ( $ dataTableOut ) ) { $ xml .= $ prefixLines . "\t<result $nameDescriptionAttribute=\"$keyName\" />\n" ; } else { $ xml .= $ prefixLines . "\t<result $nameDescriptionAttribute=\"$keyName\">\n" ; $ xml .= $ dataTableOut ; $ xml .= $ prefixLines . "\t</result>\n" ; } } return $ xml ; } if ( $ firstTable instanceof Map ) { $ xml = '' ; $ tables = $ table -> getDataTables ( ) ; $ nameDescriptionAttribute = $ table -> getKeyName ( ) ; foreach ( $ tables as $ valueAttribute => $ tableInArray ) { $ out = $ this -> renderTable ( $ tableInArray , true , $ prefixLines . "\t" ) ; $ xml .= $ prefixLines . "\t<result $nameDescriptionAttribute=\"$valueAttribute\">\n" . $ out . $ prefixLines . "\t</result>\n" ; } return $ xml ; } return '' ; }
docstring: Computes the output for the given data table array
  
  @param Map $table
  @param array $array
  @param string $prefixLines
  @return string
docstring_tokens: Computes the output for the given data table array