次のコードを使用して、顧客の新しい借方を作成しています。問題は、バランスの取れた市場を確認すると、顧客が 2 回引き落とされていることです。
<?php
Balanced\Settings::$api_key = "*********************";
$customer = \Balanced\Customer::get("/v1/customers/CU34xY6f9bKZzb0kjBxWTUjC");
$debit = $customer->debit('7000');
foreach ($debit as $key=> $value) { echo "$key : $value <br>"; };
?>
作成された最初の借方は、balanced によって返される変数 $debit として表示され、次に 2 番目の借方が作成されてマーケットプレイスに表示されます。コードが 2 回実行されていた場合、2 回目のコードが表示されると予想していました。
drupal 実行コードについて言及されている解決策を 2 回試みました
<?php
if (!function_exists('f')) {
function f() {
/* Code goes here */
return $new_debit;
}
}
$debit = f();
?>
コードはブロック内で php として実行され、ページの読み込み時にアクティブ化されます。問題はブロックに関連していると思います。
コードをページ本文に直接挿入することで問題を解決しました。ティーザーが非表示に設定されているかどうかは関係ありません。
ブロックを使用するつもりはありません。テストが終了したら、カスタム モジュールに移行する可能性があります。他の誰かが同様の問題を抱えていて、これが彼らを助ける場合に備えて、これを投稿しています。また、ブロックでこれが起こっている理由を知りたいからです。