PHP SimpleXML语法错误

时间:2012-04-06 15:57:28

标签: php simplexml

我正在开发Twitterbot后端应用程序,我正在尝试将直接消息复制到可以保存然后读取的字符串中。如果我想成功地将它集成到我的AIML(人工智能标记语言)引擎中。

当我运行文件进行测试时,我得到一个Parse错误:

syntax error, unexpected T_VARIABLE referring to the line "file_put_contents('Program-O/InfoBot2012/test.xml', $direct_messages);" 

我检查了语法,因为我跟着this线程,没有明显的错误。

$connection = new TwitterOAuth($consumer_key,$consumer_secret, $oAuthToken,  $oAuthSecret);

$direct_messages = $connection->get('direct_messages');

$direct_messages = file_get_contents('https://api.twitter.com/1/direct_messages.json')
file_put_contents('Program-O/InfoBot2012/test.xml', $direct_messages);

$direct_messages = simplexml_load_file("test.xml");

3 个答案:

答案 0 :(得分:1)

$direct_messages = file_get_contents('https://api.twitter.com/1/direct_messages.json')
                                                                                      ^--

我在标记的位置错过了;

答案 1 :(得分:1)

你必须启用php_openssl.dll(dll,因为你使用的是Windows)。

您可以通过打开php.ini(通常是xampp / EasyPHP文件夹中的apache / bin / php.ini)来执行此操作,然后删除“;”在“extension = php_openssl.dll”行之前(所以你取消注释它),或者在文件底部添加“extension = php_openssl.dll”。

这样将加载php_openssl.dll,PHP将知道如何处理HTTPS。

答案 2 :(得分:0)

根据direct_messages api上的Twitter文档,请求https://api.twitter.com/1/direct_messages.json将返回JSON响应,您尝试将其保存并加载为XML。

请尝试https://api.twitter.com/1/direct_messages.xml

希望它有所帮助。