我有以下代码:
$charge = \Stripe\Charge::create(array(
'customer' => $customer->id,
'amount' => $amount,
'currency' => 'cad',
'capture' => 'false',
'description'=> $courseTitle
));
$charge_json = $charge->__toJSON();
echo $charge_json['id'];
echo "<pre>";
var_dump($charge_json);
echo "</pre>";
}
意图是抓住下面果岭上的什么:
但是我收到以下错误:
Warning: Illegal string offset 'id'
我想稍后在mysql查询中使用该变量
答案 0 :(得分:2)
据我所知,这是一个JSON字符串。
您需要使用json_decode将其转换为数组或对象:
$array = json_decode($charge_json, true);
$object = json_decode($charge_json);
对于数组,您可以像访问它一样访问它。
对于某个对象,您可以像访问$object->id
如果Stripe提供了一种将其作为对象或数组检索的方法,那么你应该使用它。
答案 1 :(得分:2)
$ charge已经是一个对象,所以你可以抓住$ charge-&gt; id
echo $charge->id
会打印费用ID。
调用toJSON会将其转换为字符串,因此string [string]无效php。