str_repeat が負の数を処理できないことはわかっています。そして、私は実際に私が今抱えている問題を回避しましたが、回避策は私のテストサーバーでしか機能しませんでした. 私はそれを持っているので、ユーザーの健康状態が 0 を下回ると「入院中」と表示され、0 を超えるとハートがいくつか表示されます。しかし、コードは不思議なことに動作を停止し、次のエラーが表示されます: 警告: str_repeat(): 2 番目の引数は、/home5/thehave8/public_html/gmz1023/includes/class/template_engine.php の 0 以上でなければなりません。 53
これは、数値が負であることを意味しています。
$vitals = parent::userVitals($uid);
$hearts = round($vitals['health']/15);
if($hearts <= 0)
{
$health = 'hospitalized';
}
if($hearts >= 10)
{
$health = str_repeat('♥', 13);
$health .= '+';
}
if($hearts < 10)
{
$health = str_repeat('♥', $hearts);
}
return $health;