3

私は、私たちのウェブサイトのために多くのユーザーチェックを行っています。以下はコードです。アカウントが 1 つしかない場合、「ユーザー」という言葉をどのように使用できますか。

コード:

       $result = mysql_query("SELECT * FROM users WHERE user_id='$userid'");
       $num_rows = mysql_num_rows($result);

        echo "amount of users.";
4

4 に答える 4

9

これらの答えはすべてうまく機能しますが、再利用可能な方法を探している場合は、いつでも外部化できます。

function get_plural($value, $singular, $plural){
    if($value == 1){
        return $singular;
    } else {
        return $plural;
    }
}

$value = 0;
echo get_plural($value, 'user', 'users');

$value = 3;
echo get_plural($value, 'user', 'users');

$value = 1;
echo get_plural($value, 'user', 'users');

// And with other words
$value = 5;
echo get_plural($value, 'foot', 'feet');

$value = 1;
echo get_plural($value, 'car', 'cars');

または、さらに自動化したい場合$pluralは、代替単語 (例: foot/feet) の場合にのみ変数セットが必要になるように設定できます。

function get_plural($value, $singular, $plural = NULL){
    if($value == 1){
        return $singular;
    } else {
        if(!isset($plural)){
            $plural = $singular.'s';
        }
        return $plural;
    }
}

echo get_plural(4, 'car');   // Outputs 'cars'
echo get_plural(4, 'foot');  // Outputs 'foots'
echo get_plural(4, 'foot', 'feet');  // Outputs 'feet'
于 2011-02-21T14:29:39.890 に答える
4

試す

if($num_rows === 1)
{
    echo "user";
}
else
{
    echo "users";
}

または短い形式で

echo $num_rows === 1 ? "user" : "users";
于 2011-02-21T14:16:25.883 に答える