2014-10-20 96 views
0

當我讀條紋API的所有計劃我得到如下回應條紋計劃JSON字符串格式化

Stripe_List JSON: { "object": "list", "has_more": false, "url": "\/v1\/plans", "data": [ { "id": "999999999", "interval": "month", "name": "10MB \/ Month", "created": 1409893899, "amount": 9900, "currency": "usd", "object": "plan", "livemode": false, "interval_count": 1, "trial_period_days": null, "metadata": [], "statement_description": "Inc" } ] } 

我如何刪除Stripe_List JSON:從響應。

這裏是我的PHP代碼

function GetAllPlans(){ 
    require_once('./stripe-php/lib/Stripe.php'); 
    Stripe::setApiKey($this->APIKEY);  
    return Stripe_Plan::all(); 
} 

這裏是代碼調用函數

echo $objstripe->GetAllPlans(); 
+0

根據他們的文檔,它返回一個關聯數組。你確定你沒有轉換爲json並自己添加該字符串嗎? – jeroen 2014-10-20 13:43:42

+0

不,我不添加,它只是這樣回來 – 2014-10-20 13:45:21

+0

我可以在Android中刪除該字符串,但它如何在PHP端可能? – 2014-10-20 13:46:41

回答

0

根據您的意見,您使用的是:

echo $objstripe->GetAllPlans(); 

GetAllPlans()方法返回一個associative array,你不能只回聲一個數組。

假設你想JSON,你應該使用:

echo json_encode($objstripe->GetAllPlans()); 
exit; 

這將encode關聯數組到JSON字符串,你可以通過你的Android應用程序。

+0

是的,我嘗試過,但得到的答覆像「{}」 – 2014-10-20 13:53:38

+0

@AbleAlias檢查「Stripe_Plan :: all()」的值。如果這是一個非空數組,那麼'json_encode()'不會返回一個空的對象字符串。 – jeroen 2014-10-20 13:55:12

+0

如果我使用這段代碼「echo $ objstripe-> GetAllPlans();」如果我使用這段代碼「echo json_encode($ objstripe-> GetAllPlans());」得到空結果 – 2014-10-20 13:57:09

0

我希望問題是因爲你只在函數中包含條紋庫,但是你將Stripe_Plan對象從函數中退出。如果在該函數之外接收到該數據,則PHP腳本無法訪問PHP庫,因此它不會理解對象類型。

就個人而言,我沒有看到有一個函數只是調用Stripe函數的好處;我完全不用這個構造,只是在需要時直接調用Stripe方法。

希望幫助, 拉里

PS我在條紋上的支持工作。

+0

你可以請建議,我如何重寫代碼? – 2014-10-21 15:37:38