PHP变量值不在外面打印try catch

时间:2015-04-30 21:04:54

标签: php exception

我正在尝试在try catch代码之外打印变量值,但它没有打印出来。 以下是我的代码

 $error;
 try {

  $customer = \Stripe\Customer::create(array(
      "description"=>"Customer",
        "source" => $token,
        "email" => $email,
      "plan" => "armorax"
          )
    );

 $payment = \Stripe\Charge::create(array(
 'amount'        => $amount,
 'currency'      => 'usd',

 'description'   => $_POST['description'],
  "customer" => $customer->id

 )
 );




 } catch(\Stripe\Error\Card $e) {

   $body = $e->getJsonBody();
   $err  = $body['error'];
    $error= 'Status is:' . $e->getHttpStatus() . "\n";
 }

 //SOme HTML CODE
  <div class="alert"><?php echo $error; ?></div>

$ error如果有但没有打印错误,应该打印错误。

1 个答案:

答案 0 :(得分:0)

一些事情。您对$error;行做了什么?如果您尝试初始化变量,只需使用$error = null;将其设置为null。

其次,请确保您正确地编写了try / catch。

try {
 //SomePhp code here
} catch (Exception $e) {
    echo 'Caught exception: ',  $e->getMessage(), "\n";
}

如果它没有回应异常,则尝试不会以失败开始。

PHP documentation - Try/Catch