本文整理汇总了PHP中Zend_Amf_Parse_OutputStream::getStream方法的典型用法代码示例。如果您正苦于以下问题:PHP Zend_Amf_Parse_OutputStream::getStream方法的具体用法?PHP Zend_Amf_Parse_OutputStream::getStream怎么用?PHP Zend_Amf_Parse_OutputStream::getStream使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Zend_Amf_Parse_OutputStream
的用法示例。
在下文中一共展示了Zend_Amf_Parse_OutputStream::getStream方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: getHttpPost
public function getHttpPost()
{
//if($this->post_data)
// return $this->post_data;
$stream = new Zend_Amf_Parse_OutputStream();
$stream->writeByte(0x0);
$stream->writeByte($this->_objectEncoding);
$headerCount = count($this->_headers);
$stream->writeInt($headerCount);
foreach ($this->getAmfHeaders() as $header) {
$serializer = new Zend_Amf_Parse_Amf0_Serializer($stream);
$stream->writeUTF($header->name);
$stream->writeByte($header->mustRead);
$stream->writeLong(Zend_Amf_Constants::UNKNOWN_CONTENT_LENGTH);
$serializer->writeTypeMarker($header->data);
}
// loop through the AMF bodies that need to be returned.
$bodyCount = count($this->_bodies);
$stream->writeInt($bodyCount);
foreach ($this->_bodies as $body) {
$serializer = new Zend_Amf_Parse_Amf0_Serializer($stream);
$stream->writeUTF($body->getTargetURI());
$stream->writeUTF($body->getResponseURI());
$stream->writeLong(Zend_Amf_Constants::UNKNOWN_CONTENT_LENGTH);
if ($this->_objectEncoding == Zend_Amf_Constants::AMF0_OBJECT_ENCODING) {
$serializer->writeTypeMarker($body->getData());
} else {
// Content is AMF3
$serializer->writeTypeMarker($body->getData(), Zend_Amf_Constants::AMF0_AMF3);
}
}
return $this->post_data = $stream->getStream();
}
示例2: encode
public function encode($data, $human_readable = false)
{
$this->init();
require_once $this->path . 'OutputStream.php';
require_once $this->path . 'Amf3/Serializer.php';
$stream = new Zend_Amf_Parse_OutputStream();
$serializer = new Zend_Amf_Parse_Amf3_Serializer($stream);
$serializer->writeTypeMarker($data);
return $stream->getStream();
}
示例3: serialize
/**
* Serialize a PHP value to AMF3 format
*
* @param mixed $value
* @param array $opts
* @return string
* @throws Zend_Serializer_Exception
*/
public function serialize($value, array $opts = array())
{
try {
$stream = new Zend_Amf_Parse_OutputStream();
$serializer = new Zend_Amf_Parse_Amf3_Serializer($stream);
$serializer->writeTypeMarker($value);
return $stream->getStream();
} catch (Exception $e) {
throw new Zend_Serializer_Exception('Serialization failed by previous error', 0, $e);
}
}
示例4: serialize
/**
* Serialize a PHP value to AMF0 format
*
* @param mixed $value
* @param array $opts
* @return string
* @throws Zend_Serializer_Exception
*/
public function serialize($value, array $opts = array())
{
try {
$stream = new Zend_Amf_Parse_OutputStream();
$serializer = new Zend_Amf_Parse_Amf0_Serializer($stream);
$serializer->writeTypeMarker($value);
return $stream->getStream();
} catch (Exception $e) {
require_once PHP_LIBRARY_PATH . 'Zend/Serializer/Exception.php';
throw new Zend_Serializer_Exception('Serialization failed by previous error', 0, $e);
}
}
示例5: getResponse
/**
* Return the output stream content
*
* @return string The contents of the output stream
*/
public function getResponse()
{
return $this->_outputStream->getStream();
}
示例6: sendData
public function sendData($data)
{
header("Cache-Control: no-cache, must-revalidate");
header("Expires: 0");
header('Content-Type: ' . $this->format);
if ($this->format == RestFormat::AMF) {
require_once 'Zend/Amf/Parse/OutputStream.php';
require_once 'Zend/Amf/Parse/Amf3/Serializer.php';
$stream = new Zend_Amf_Parse_OutputStream();
$serializer = new Zend_Amf_Parse_Amf3_Serializer($stream);
$serializer->writeTypeMarker($data);
$data = $stream->getStream();
} else {
if (is_object($data) && method_exists($data, '__keepOut')) {
$data = clone $data;
foreach ($data->__keepOut() as $prop) {
unset($data->{$prop});
}
}
$data = json_encode($data);
if ($data && $this->mode == 'debug') {
$data = $this->json_format($data);
}
}
echo $data;
}
示例7: sendData
public function sendData($data)
{
header('Content-Type: ' . $this->format);
if ($this->format == RestFormat::AMF) {
require_once 'Zend/Amf/Parse/OutputStream.php';
require_once 'Zend/Amf/Parse/Amf3/Serializer.php';
$stream = new Zend_Amf_Parse_OutputStream();
$serializer = new Zend_Amf_Parse_Amf3_Serializer($stream);
$serializer->writeTypeMarker($data);
$data = $stream->getStream();
} else {
if ($this->format == RestFormat::XML) {
$data = ArrayToXML::toXml($data);
} else {
$data = json_encode($data);
if ($data && $this->mode == 'debug') {
$data = $this->json_format($data);
$mathes = array();
$pattern = '/"new Date\\([0-9\\,\\s]*\\)"/';
$matches = array();
preg_match_all($pattern, $data, $matches);
$matches = $matches[0];
foreach ($matches as $match) {
$tmpStrLen = strlen($match);
$tmpStr = substr($match, 1, $tmpStrLen - 2);
$data = str_replace($match, $tmpStr, $data);
}
}
}
}
echo $data;
}