Server IP : 103.119.228.120 / Your IP : 18.217.252.194 Web Server : Apache System : Linux v8.techscape8.com 3.10.0-1160.119.1.el7.tuxcare.els2.x86_64 #1 SMP Mon Jul 15 12:09:18 UTC 2024 x86_64 User : nobody ( 99) PHP Version : 5.6.40 Disable Function : shell_exec,symlink,system,exec,proc_get_status,proc_nice,proc_terminate,define_syslog_variables,syslog,openlog,closelog,escapeshellcmd,passthru,ocinum cols,ini_alter,leak,listen,chgrp,apache_note,apache_setenv,debugger_on,debugger_off,ftp_exec,dl,dll,myshellexec,proc_open,socket_bind,proc_close,escapeshellarg,parse_ini_filepopen,fpassthru,exec,passthru,escapeshellarg,escapeshellcmd,proc_close,proc_open,ini_alter,popen,show_source,proc_nice,proc_terminate,proc_get_status,proc_close,pfsockopen,leak,apache_child_terminate,posix_kill,posix_mkfifo,posix_setpgid,posix_setsid,posix_setuid,dl,symlink,shell_exec,system,dl,passthru,escapeshellarg,escapeshellcmd,myshellexec,c99_buff_prepare,c99_sess_put,fpassthru,getdisfunc,fx29exec,fx29exec2,is_windows,disp_freespace,fx29sh_getupdate,fx29_buff_prepare,fx29_sess_put,fx29shexit,fx29fsearch,fx29ftpbrutecheck,fx29sh_tools,fx29sh_about,milw0rm,imagez,sh_name,myshellexec,checkproxyhost,dosyayicek,c99_buff_prepare,c99_sess_put,c99getsource,c99sh_getupdate,c99fsearch,c99shexit,view_perms,posix_getpwuid,posix_getgrgid,posix_kill,parse_perms,parsesort,view_perms_color,set_encoder_input,ls_setcheckboxall,ls_reverse_all,rsg_read,rsg_glob,selfURL,dispsecinfo,unix2DosTime,addFile,system,get_users,view_size,DirFiles,DirFilesWide,DirPrintHTMLHeaders,GetFilesTotal,GetTitles,GetTimeTotal,GetMatchesCount,GetFileMatchesCount,GetResultFiles,fs_copy_dir,fs_copy_obj,fs_move_dir,fs_move_obj,fs_rmdir,SearchText,getmicrotime MySQL : ON | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /usr/local/lib/php/XML/RPC/ |
Upload File : |
<?php /* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */ /** * Function and class to dump XML_RPC_Value objects in a nice way * * Should be helpful as a normal var_dump(..) displays all internals which * doesn't really give you an overview due to too much information. * * @category Web Services * @package XML_RPC * @author Christian Weiske <cweiske@php.net> * @license http://www.php.net/license/3_01.txt PHP License * @version SVN: $Id: Dump.php 300962 2010-07-03 02:24:24Z danielc $ * @link http://pear.php.net/package/XML_RPC */ /** * Pull in the XML_RPC class */ require_once 'XML/RPC.php'; /** * Generates the dump of the XML_RPC_Value and echoes it * * @param object $value the XML_RPC_Value object to dump * * @return void */ function XML_RPC_Dump($value) { $dumper = new XML_RPC_Dump(); echo $dumper->generateDump($value); } /** * Class which generates a dump of a XML_RPC_Value object * * @category Web Services * @package XML_RPC * @author Christian Weiske <cweiske@php.net> * @license http://www.php.net/license/3_01.txt PHP License * @version Release: @package_version@ * @link http://pear.php.net/package/XML_RPC */ class XML_RPC_Dump { /** * The indentation array cache * @var array */ var $arIndent = array(); /** * The spaces used for indenting the XML * @var string */ var $strBaseIndent = ' '; /** * Returns the dump in XML format without printing it out * * @param object $value the XML_RPC_Value object to dump * @param int $nLevel the level of indentation * * @return string the dump */ function generateDump($value, $nLevel = 0) { if (!is_object($value) || strtolower(get_class($value)) != 'xml_rpc_value') { require_once 'PEAR.php'; PEAR::raiseError('Tried to dump non-XML_RPC_Value variable' . "\r\n", 0, PEAR_ERROR_PRINT); if (is_object($value)) { $strType = get_class($value); } else { $strType = gettype($value); } return $this->getIndent($nLevel) . 'NOT A XML_RPC_Value: ' . $strType . "\r\n"; } switch ($value->kindOf()) { case 'struct': $ret = $this->genStruct($value, $nLevel); break; case 'array': $ret = $this->genArray($value, $nLevel); break; case 'scalar': $ret = $this->genScalar($value->scalarval(), $nLevel); break; default: require_once 'PEAR.php'; PEAR::raiseError('Illegal type "' . $value->kindOf() . '" in XML_RPC_Value' . "\r\n", 0, PEAR_ERROR_PRINT); } return $ret; } /** * Returns the scalar value dump * * @param object $value the scalar XML_RPC_Value object to dump * @param int $nLevel the level of indentation * * @return string Dumped version of the scalar value */ function genScalar($value, $nLevel) { if (gettype($value) == 'object') { $strClass = ' ' . get_class($value); } else { $strClass = ''; } return $this->getIndent($nLevel) . gettype($value) . $strClass . ' ' . $value . "\r\n"; } /** * Returns the dump of a struct * * @param object $value the struct XML_RPC_Value object to dump * @param int $nLevel the level of indentation * * @return string Dumped version of the scalar value */ function genStruct($value, $nLevel) { $value->structreset(); $strOutput = $this->getIndent($nLevel) . 'struct' . "\r\n"; while (list($key, $keyval) = $value->structeach()) { $strOutput .= $this->getIndent($nLevel + 1) . $key . "\r\n"; $strOutput .= $this->generateDump($keyval, $nLevel + 2); } return $strOutput; } /** * Returns the dump of an array * * @param object $value the array XML_RPC_Value object to dump * @param int $nLevel the level of indentation * * @return string Dumped version of the scalar value */ function genArray($value, $nLevel) { $nSize = $value->arraysize(); $strOutput = $this->getIndent($nLevel) . 'array' . "\r\n"; for($nA = 0; $nA < $nSize; $nA++) { $strOutput .= $this->getIndent($nLevel + 1) . $nA . "\r\n"; $strOutput .= $this->generateDump($value->arraymem($nA), $nLevel + 2); } return $strOutput; } /** * Returns the indent for a specific level and caches it for faster use * * @param int $nLevel the level * * @return string the indented string */ function getIndent($nLevel) { if (!isset($this->arIndent[$nLevel])) { $this->arIndent[$nLevel] = str_repeat($this->strBaseIndent, $nLevel); } return $this->arIndent[$nLevel]; } } /* * Local variables: * tab-width: 4 * c-basic-offset: 4 * c-hanging-comment-ender-p: nil * End: */ ?>