Webサイトには、MySQLデータベースから計算された数値に応じて、サイトのテキストへの変更を自動化するための小さなPHPスクリプトがいくつかあります。このサイトは募金グループ向けであり、ホームページの問題のテキストは募金総額を示しています。
調達額はデータベースから取得され、千の位に四捨五入されます。これは、図を丸めて合計の最後の3桁を見つけるために使用するPHPです。
$ query4 = mysql_query( "SELECT SUM(amountraised)AS full_total FROM Fundraisingtotal;");
$ result4 = mysql_fetch_array($ query4);
$ fulltotal = $ result4 ["full_total"];
$ num = $ fulltotal + 30000;
$ ftotalr = round($ num、-3);
$ roundnum = round($ num);
$ string = $ roundnum;
$ length = strlen($ string);
$ characters = 3;
$ start = $ length-$ characters;
$ string = substr($ string、$ start、$ characters);
$ figure = $ string;
(£30,000は、プロジェクトが最初に開始されたときから前の資金調達チームによって調達された金額です。そのため、$num変数の$fulltotalに30000を追加しました)
現在、テキストは次のようになっています。
the bookstall and other fundraising events have raised more than £<? echo number_format($ftotalr); ?>
PHPは千の位に四捨五入されているので、たとえば合計が39,200ポンドで、40,000ポンドに四捨五入されている場合、40,000ポンドを超えると言うのは正しくないことに気づきました。その場合は、それが必要になります。 「ほぼ£40,000」またはそれに類似したものと言います。明らかに、「以上」を変数に置き換える必要があります。
明らかに、合計の最後の3桁が0または1000に近いかどうかをテストする必要があります。たとえば、合計が39,2000ポンドの場合、39,250ポンドから39,250ポンドの間であれば、テキストは「ちょうど上」になります。 39,400ポンドは「オーバー」、39,400ポンドから39,700ポンドは「ウェルオーバー」、39,700ポンドから39,999ポンドは「ほぼ」のようなものです。
合計の最後の3桁を変数として取得できたので、何らかのif / else / elseifコードブロックが必要だと思います(それが正しいアプローチかどうか、またはユースケース/を使用するかどうかはわかりません)。ブレーク)、そして明らかに、図が各基準を満たしているかどうかを確認する必要がありますが、それを行う方法がわかりません。誰かがこれを行うための最良の方法を提案できますか?