Ejemplo n.º 1
0
 static function toHtmlTable($obj, $htmlEncode = false)
 {
     $retval = array();
     if (is_object($obj)) {
         $retval[] = '<table>';
         $retval[] = '<tr><th>' . get_class($obj) . '</th><th>&nbsp;</th></tr>';
         $retval[] = '<tr><th>Field</th><th>Value</th></tr>';
         foreach (get_object_vars($obj) as $key => $value) {
             if ($value === false) {
                 $value = '<em>false</em>';
             }
             if ($value === null) {
                 $value = '<em>null</em>';
             }
             if (is_array($value) or is_object($value)) {
                 $value = FX::toHtmlTable($value, $htmlEncode);
             } else {
                 if ($htmlEncode) {
                     $value = FX::html_encode($value);
                 }
             }
             $retval[] = '<tr><td valign="top">' . $key . '</td><td valign="top">' . $value . '</td></tr>';
         }
         $retval[] = '</table>';
     } else {
         if (is_array($obj)) {
             if (count($obj) == 0) {
                 $retval[] = '<em>(empty array)</em>';
             } else {
                 $retval[] = '<table>';
                 $retval[] = '<tr><th>Key</th><th>Value</th></tr>';
                 foreach ($obj as $key => $value) {
                     if ($value === false) {
                         $value = '<em>false</em>';
                     }
                     if ($value === null) {
                         $value = '<em>null</em>';
                     }
                     if (is_array($value) or is_object($value)) {
                         $value = FX::toHtmlTable($value, $htmlEncode);
                     } else {
                         if ($htmlEncode) {
                             $value = FX::html_encode($value);
                         }
                     }
                     $retval[] = '<tr><td valign="top">' . $key . '</td><td valign="top">' . $value . '</td></tr>';
                 }
                 $retval[] = '</table>';
             }
         } else {
             if ($htmlEncode) {
                 $obj = FX::html_encode($obj);
             }
             $retval[] = $obj;
         }
     }
     return implode("\n", $retval);
 }