2011-12-11 195 views
0

我正在使用php創建API密鑰。我得到了一點,但我想在一個變量中存儲一個函數。但相反,它總是回聲。我希望函數應該存儲在一個變量中,當變量被回顯時,它的函數應該被回顯。我的代碼是:將php函數存儲在變量中

客戶:

function get_cat($id){ 
    // Initialising authorisation to access api keys   
    $ch = curl_init("http://localhost/api/category.php?id=".$id); 
    curl_setopt($ch, CURLOPT_COOKIE, "log=".$_SESSION['log']); 
    // Executing script to set login session 
    curl_exec($ch); 
    // Closing curl connection session 
    curl_close($ch); 
} 

服務器:

// Fetching data from database 
    $query = mysql_query("SELECT * FROM cat WHERE id={$id}", $con) or die("Sorry Cannot Connect: ".mysql_error()); 
    echo json_encode(mysql_fetch_assoc($query)); 

客戶:

$api = new API('test', 'test'); 
$res = $api->get_cat(2); 

現在,即使我分配的功能在$res變量它的回聲。無論如何要阻止它?因爲我希望用戶將函數存儲在一個變量中,並使用該變量在其所需的任何位置顯示這些內容。

+0

我很抱歉,我沒有得到你如果我的英語,然後我的壞我很抱歉...... –

回答

1

默認情況下,curl會將內容添加到標準輸出,例如,頁面緩衝區取消選擇您請求它從curl_exec返回。

試試這個:

function get_cat($id){ 
    // Initialising authorisation to access api keys   
    $ch = curl_init("http://localhost/api/category.php?id=".$id); 
    curl_setopt($ch, CURLOPT_COOKIE, "log=".$_SESSION['log']); 
    curl_setopt($ch, CURLOPT_HEADER, 0); //2 Not inc the http headers 
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
    // Executing script to set login session 
    $html = curl_exec($ch); 
    // Closing curl connection session 
    curl_close($ch); 
    return $html; 
} 
+0

作品十分感謝... –