无法将Conekta \ Object用作对象,因为“对象”是特殊的类名

时间:2019-05-07 22:17:12

标签: laravel postman

我正在尝试使用Conekta向oxxo推荐人付款,这是与PostMan一起使用的,因为它是Web服务,当我尝试消耗ws时会遇到下一个错误:

FatalErrorException in Resource.php line 5:  
Cannot use Conekta\Object as Object because 'Object' is a special class name  
1. in Resource.php line 5

我读到这个问题是由版本引起的,但是我有最新版本的Conekta“ 4.0.4”,这是PHP 7+,我的PHP版本是7.3。

那么有人可以帮我吗?
我有2天的时间遇到​​此问题,在Internet上我什么都没找到。

这是我的代码

private function payWithOxxoPay($payment_token) {

      $amount = (int) $this->package->price * 100;

      // Processing payment
      $this->payment_type = 'Conekta_Oxxo';
      $this->payment_status = 'Procesando';
      $this->payment_reference = "promo_" . $this->id;
      $this->save();

        Conekta::setApiKey(config('app.conekta_private_key'));
        $chargeData = [
            "amount"=> $amount,
            "currency"=> "MXN",
            "description"=> "Promoción " . $this->package->title,
            "reference_id"=> $this->payment_reference,
            "card"=> $this->payment_token,
            'details' => [
                'name'=> $this->user->name . ' ' . $this->user->last_name,
                'phone'=> $this->user->phone ?: '38109948',
                'email'=> $this->user->email ?: 'default@turnmyapp.com',
                'line_items'=> [
                    [
                        'name'=> "Promoción " . $this->package->title,
                        'description'=> "Promoción " . $this->package->title,
                        'unit_price'=> $amount,
                        'quantity'=> 1,
                        'sku'=> 'promo_pack_' . $this->package->id,
                        'category'=> 'Promotion'
                    ]
                ]
            ]
        ];
       $charge = \Conekta\Charge::create($chargeData);
}  

1 个答案:

答案 0 :(得分:0)

自PHP 7.2起,Object不再是类名。您正在使用的库(Conekta)似乎尚未准备好。

用其他名称替换类名将有助于解决此问题。

请参见Cannot use yii\base\Object as Object because 'Object' is a special class name yii2 advance,以了解另一个具有导致7.2不兼容的问题的库。