PHP で Alipay SDK を使用する際のエラー問題を解決する

藏色散人
リリース: 2023-04-07 19:20:02
転載
3619 人が閲覧しました

最近、会社はいくつかのプロジェクトをサーバーに転送しました。その後、Alipay を使用して支払いをする際にエラーが発生したことが判明しました。エラーは次のとおりです:

The each() function is deprecated. This message will be suppressed on furthe
ログイン後にコピー

最終的に、これは新しいサーバーの PHP バージョンが php7.2 でインストールされているため、php7.2 バージョンでは each メソッドが放棄されているため、エラーが発生しました。解決策は、次のように each メソッドを foreach メソッドに変更することです。 :

while (list($key, $val) = each($para)) {}
ログイン後にコピー

foreach ($para as $key => $val) {}
ログイン後にコピー

に変更されます 変更が完了すると、支払いが見つかり、次のエラーが発生します:

count(): Parameter must be an array or an object that implements Countable
ログイン後にコピー

これはカウントによるエラーですphp7.2 のメソッドパラメータは配列のみをサポートしているため、次のように変更します:

$arg = substr($arg,0,count($arg)-2);
ログイン後にコピー

を:

$arg = substr($arg,0,strlen($arg)-1);
ログイン後にコピー

変更が完了すると、Alipay の支払いが成功しました。 ! !

関連する推奨事項: 「PHP チュートリアル

以上がPHP で Alipay SDK を使用する際のエラー問題を解決するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
php
ソース:segmentfault.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート