X-Git-Url: http://git.polytechnique.org/?a=blobdiff_plain;f=include%2FTree%2FNode.php;h=c29c70efe97c6fb3451449ed4d59c708296e2761;hb=16e8fac27cb4f25e8fcfcb30358d5486b4d8f809;hp=65f1f1fdc3743c9f23c90a17415dd46d88ff9abb;hpb=55d2e17d82f3481135c7d438a1f90be6ac9394f8;p=diogenes.git diff --git a/include/Tree/Node.php b/include/Tree/Node.php index 65f1f1f..c29c70e 100644 --- a/include/Tree/Node.php +++ b/include/Tree/Node.php @@ -18,6 +18,8 @@ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ +require_once 'diogenes/diogenes.misc.inc.php'; + define('NODE_DUMP_BINARY', 0); define('NODE_DUMP_TEXT', 1); define('NODE_DUMP_NOCHILDREN', 2); @@ -47,27 +49,29 @@ function var_encode_text($var, $level = 0, $no_children = FALSE, $tabstr = ' ', return $code; } elseif (is_array($var)) { $arraysep = ",$eol"; - $code = "array(".$eol; + $vcode = ''; foreach ($var as $key => $value) { - $code .= str_repeat($tabstr, $level + 1); - $code .= "'$key'=>".var_encode_text($value, $level + 1, $no_children, $tabstr, $eol); - $code .= $arraysep; + $vcode .= str_repeat($tabstr, $level + 1); + $vcode .= "'$key'=>".var_encode_text($value, $level + 1, $no_children, $tabstr, $eol); + $vcode .= $arraysep; } - if (substr($code, -strlen($arraysep))) - $code = substr($code, 0, - strlen($arraysep)); - $code .= $eol; - //$code = chop($code, ','); //remove unnecessary coma - $code .= str_repeat($tabstr, $level) . ")"; + if (substr($vcode, -strlen($arraysep)) == $arraysep) + $vcode = substr($vcode, 0, - strlen($arraysep)); + + $code = "array(".($vcode ? "$eol$vcode$eol".str_repeat($tabstr, $level) : ""). ")"; return $code; - } elseif (is_string($var)) { + } elseif (is_scalar($var)) { return "'".$var."'"; - } elseif (is_bool($var)) { - return ($code ? 'TRUE' : 'FALSE'); } else { return 'NULL'; } } +function var_encode_html($var, $level = 0, $no_children = FALSE) +{ + return var_encode_text($var, $level, $no_children, '  ', $eol = "
\n"); +} + function var_encode_bin($var, $no_children = FALSE) { if (is_object($var) && (get_class($var) == 'Diogenes_Tree_Node')) { @@ -158,13 +162,6 @@ class Diogenes_Tree_Node $this->children = $children; } - /** Add a child for this node. - */ - function pushChild($node, $index) - { - array_push($this->children, $node); - } - /** Return the specified child of this node. */ function getChild($index)