芝麻web文件管理V1.00
编辑当前文件:/home4/randall/public_html/adriancespedes.com/wp-includes/IXR/class-IXR-value.php
data = $data; if (!$type) { $type = $this->calculateType(); } $this->type = $type; if ($type == 'struct') { // Turn all the values in the array in to new IXR_Value objects foreach ($this->data as $key => $value) { $this->data[$key] = new IXR_Value($value); } } if ($type == 'array') { for ($i = 0, $j = count($this->data); $i < $j; $i++) { $this->data[$i] = new IXR_Value($this->data[$i]); } } } /** * PHP4 constructor. */ public function IXR_Value( $data, $type = false ) { self::__construct( $data, $type ); } function calculateType() { if ($this->data === true || $this->data === false) { return 'boolean'; } if (is_integer($this->data)) { return 'int'; } if (is_double($this->data)) { return 'double'; } // Deal with IXR object types base64 and date if (is_object($this->data) && is_a($this->data, 'IXR_Date')) { return 'date'; } if (is_object($this->data) && is_a($this->data, 'IXR_Base64')) { return 'base64'; } // If it is a normal PHP object convert it in to a struct if (is_object($this->data)) { $this->data = get_object_vars($this->data); return 'struct'; } if (!is_array($this->data)) { return 'string'; } // We have an array - is it an array or a struct? if ($this->isStruct($this->data)) { return 'struct'; } else { return 'array'; } } function getXml() { // Return XML for this value switch ($this->type) { case 'boolean': return '
'.(($this->data) ? '1' : '0').'
'; break; case 'int': return '
'.$this->data.'
'; break; case 'double': return '
'.$this->data.'
'; break; case 'string': return '
'.htmlspecialchars($this->data).'
'; break; case 'array': $return = '
'."\n"; foreach ($this->data as $item) { $return .= '
'.$item->getXml()."
\n"; } $return .= '
'; return $return; break; case 'struct': $return = '
'."\n"; foreach ($this->data as $name => $value) { $name = htmlspecialchars($name); $return .= "
$name
"; $return .= $value->getXml()."
\n"; } $return .= '
'; return $return; break; case 'date': case 'base64': return $this->data->getXml(); break; } return false; } /** * Checks whether or not the supplied array is a struct or not * * @param array $array * @return bool */ function isStruct($array) { $expected = 0; foreach ($array as $key => $value) { if ((string)$key !== (string)$expected) { return true; } $expected++; } return false; } }