gpt4 book ai didi

php - sizeof() : Parameter must be an array or an object that implements Countable

转载 作者:搜寻专家 更新时间:2023-10-31 22:17:45 25 4
gpt4 key购买 nike

请帮助我

获取错误sizeof(): Parameter must be an array or an object that implements Countable

ErrorException {#654 ▼
#message: "sizeof(): Parameter must be an array or an object that implements Countable"
#code: 0
#file: "C:\Primer_Proyecto\Ventas\vendor\paypal\rest-api-sdk-php\lib\PayPal\Common\PayPalModel.php"
#line: 179
#severity: E_WARNING
trace: {▼
C:\Primer_Proyecto\Ventas\vendor\paypal\rest-api-sdk-php\lib\PayPal\Common\PayPalModel.php:179 {▶}
Illuminate\Foundation\Bootstrap\HandleExceptions->handleError() {}
C:\Primer_Proyecto\Ventas\vendor\paypal\rest-api-sdk-php\lib\PayPal\Common\PayPalModel.php:179 {▶}
C:\Primer_Proyecto\Ventas\vendor\paypal\rest-api-sdk-php\lib\PayPal\Common\PayPalModel.php:281 {▶}
C:\Primer_Proyecto\Ventas\vendor\paypal\rest-api-sdk-php\lib\PayPal\Common\PayPalModel.php:296 {▶}
C:\Primer_Proyecto\Ventas\vendor\paypal\rest-api-sdk-php\lib\PayPal\Api\Payment.php:557 {▶}
C:\Primer_Proyecto\Ventas\app\paypal.php:26 {▼
› try{\r
› \t$payment->create($this->_apiContext);\r
› }\r
arguments: {▶}
}

这是paypal.php代码


public function generate(){
$payment = \PaypalPayment::payment()->setIntent("sale")
->setPayer($this->payer())
->setTransactions([$this->transaction()])
->setRedirectURLs($this->redirectURLs());

try {
$payment->create($this->_apiContext);
}
catch(\Exception $ex){
dd($ex);
exit(1);
}

return $payment;
}


public function __construct($shopping_cart){
$this->_apiContext = \PaypalPayment::ApiContext($this->_ClientId, $this ->_ClientSecrete);
$config = config("paypal_payment");
$flatConfig = array_dot($config);
$this->_apiContext->setConfig($flatConfig);
$this->shopping_cart = $shopping_cart;
}

我没有看到错误,我停留太久一直在寻找我的错误

最佳答案

错误出在您使用的paypal\rest-api-sdk-php包中。您使用的软件包版本显然与 PHP 7.2 不完全兼容。

您遇到的特定错误已在最新版本的软件包 (1.13.0) 中得到修复。将软件包更新到最新版本,此问题将得到修复。不过,我不能说还会出现什么其他问题。

1.12.0 版本中,失败的具体行是:

} elseif (sizeof($v) <= 0 && is_array($v)) {

在 PHP 7.2 中,如果 $v 不是 Countable,sizeof() 调用将发出警告,Laravel 会将警告转换为异常。

1.13.0 版本中,他们将条件更新为

} elseif (is_array($v) && sizeof($v) <= 0) {

现在,sizeof() 只会在 $v 是数组时调用,因此保证是 Countable,从而消除警告。

关于php - sizeof() : Parameter must be an array or an object that implements Countable,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49506003/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com