由于我无法在 localhost 上安装 XML-RPC,我想知道是否有任何 PHP 替代方案xmlrpc_encode_request()
可以帮助我完成任务。
问问题
2814 次
2 回答
2
知道要输出的 XML 结构良好,您可以尝试使用XMLWriter
PHP 的扩展来为您完成工作。
注意页面上的评论:
重要提示:
XMLWriter
需要您提供 UTF-8 数据。它可以输出各种编码的XML,但输入应该是严格的UTF-8!
示例使用代码(取自 的文档XMLWriter::openMemory
):
header('Content-type: text/xml; charset=UTF-8');
$oXMLWriter = new XMLWriter;
$oXMLWriter->openMemory();
$oXMLWriter->startDocument('1.0', 'UTF-8');
$oXMLWriter->startElement('test');
$oXMLWriter->text('Hello, World!');
$oXMLWriter->endElement();
$oXMLWriter->endDocument();
echo $oXMLWriter->outputMemory(TRUE);
另外,请注意,xmlrpc_encode_request()
由于该功能是实验性的,可能会发生变化,因此请自行负责。
于 2012-08-06T18:49:01.147 回答
0
我结束了使用 PEAR XML_RPC http://pear.php.net/package/XML_RPC 我没有尝试 Whisperity 方法,因为当他回答时我已经在处理这个问题了。
为了使它工作,我刚刚安装了:
/Applications/MAMP/bin/php/php5.4.4/bin/pear install XML_RPC
然后我用:
$content = new XML_RPC_Value(array(
'post_title'=> new XML_RPC_Value($title,'string'),
'post_status'=> new XML_RPC_Value('publish','string'),
'post_excerpt'=> new XML_RPC_Value($title,'string'),
'post_content'=> new XML_RPC_Value($body,'string'),
'mt_allow_comments'=> new XML_RPC_Value(0,'int'),
'mt_allow_pings'=> new XML_RPC_Value(0,'int'),
'post_type'=> new XML_RPC_Value('market','string')
),'struct' );
$params = array(new XML_RPC_Value(0,'int'),new XML_RPC_Value($this->UserName,'string'),new XML_RPC_Value($this->PassWord,'string'),$content,new XML_RPC_Value(true,'boolean'));
于 2012-08-07T01:09:36.733 回答