【发布时间】:2017-06-06 22:11:16
【问题描述】:
我已经开发了一个模块,目前只有一些功能和从数据库获取/发布,前面我已经完成了。 我想添加一个类(cURL)来调用 3rd 方 api,但我不知道如何实现它。它应该在控制器(IndexController?)或模型文件夹中作为新文件?如果我必须在 config.xml 中添加一些细节?
【问题讨论】:
标签: php api curl magento-1.9
我已经开发了一个模块,目前只有一些功能和从数据库获取/发布,前面我已经完成了。 我想添加一个类(cURL)来调用 3rd 方 api,但我不知道如何实现它。它应该在控制器(IndexController?)或模型文件夹中作为新文件?如果我必须在 config.xml 中添加一些细节?
【问题讨论】:
标签: php api curl magento-1.9
在特定文件中使用 curl 没有任何限制。这取决于您的模块功能和参数。在 indexcontroller 中使用 curl 最有效的努力。使用可以创建一个函数并启动它们。
例如:
<?php
$curl = new Varien_Http_Adapter_Curl();
$curl->setConfig(array(
'timeout' => 15 //Timeout in no of seconds
));
$feed_url = "http://feeds.feedburner.com/magento";
$curl->write(Zend_Http_Client::GET, $feed_url, '1.0');
$data = $curl->read();
if ($data === false) {
return false;
}
$data = preg_split('/^r?$/m', $data, 2);
$data = trim($data[1]);
$curl->close();
try {
$xml = new SimpleXMLElement($data);
//Parse the XML FEED and output the data
}
catch (Exception $e) {
echo $e->getMessage();
}
?>
【讨论】:
我建议您将您的 cURl 添加到辅助类中并从控制器调用该辅助方法。 无需在 config.xml 中添加任何细节。只需在 config.xml 中定义您的辅助类,并在辅助函数中添加 cURL 数据
【讨论】: