我提出了一个 curl 请求。我将 curl 指令放在一个类函数中:
class Curly {
var $data;
function GetRequest($url) {
$ch = curl_init();
$timeout = 5;
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
$this->data = curl_exec($ch);
curl_close($ch);
//this is what i was missing --> return $this->data;
}
我将数据库查询放在另一个类函数中。
include('class.curly.php');
class mongoSearchForInfoOnEsd {
public function getEsdsFbInfo($esdID) {
$mongoApiKey = "xx";
$requestParams= "xx";
$url = "xx";
$fbInfo = (new Curly)->GetRequest($url);
//this is what i was missing --> return $fbInfo;
}
在 index.php 中,来自 webhook 的 HTTP 帖子正在通过,其中处理通过一些字符串解析以获取 2 个 id。然后我将其中一个 id 发送到 mongodb curl 请求,一切顺利。正确的响应回来了,我只知道 curl 类中 var_dump 的 var_dump 的这个 b/c ......但是在索引文件中我正在努力从 var 中获取数据并分配它的值到我想要的任何变量。
我怎样才能把数据拿出来?我知道它在那里,但在哪里?我太难了。
# get ytID from http post
#get EsdID from http post
$httpPostData = file_get_contents('php://input');
$postDataDecoded = urldecode($httpPostData);
$ytID = substr($postDataDecoded, strpos($postDataDecoded, "docid=") + strlen("docid="), );
$esdID = substr($postDataDecoded, strpos($postDataDecoded, "m\": \"") + strlen ("m\": "),;
*$esdData = (new mongoSearchForInfoOnEsd)->getEsdsFbInfo("$esdID");*
$obj = json_decode($esdData, true);
echo $obj;
好的,我添加了返回,我可以看到数据,但是没有操作对返回的数据起作用。
编辑 ---> 将 return 放入两个类中,现在它已完全可操作。