我已經提出了一個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,從一個網絡掛接的HTTP POST即將通過,在這種通過一些字符串解析,獲取2個IDS被處理。然後我發送其中一個id到mongodb curl請求,一切都很順利。正確的響應回來了,我只知道curly類中的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;
OK,我已經添加了回報,我可以看到數據,但沒有操作上返回的數據工作。
編輯--->把這兩個班的回報,現在它的全面運作。
也許你需要'GetRequest()'返回''? – lazyhammer 2013-03-23 15:01:21
這正是我剛纔說的.. – 2013-03-23 15:02:48