3

私は数字でこれを行うことができます:

<?=number_format(mt_rand(0,1));?>

私がやりたいのは、0または1の代わりに、firstclassまたはsecondclassという単語をエコーすることです。

これは、CSSでクラス識別子として数値を使用できないためです。

基本的に、これはリスト内にランダムなものを表示し、クラス識別子の前にファーストクラスまたはセカンドクラスを追加するためのものです。

.firstclass {display:none;}

私はPHPに精通していないので、配列を設定する必要があると思います。

0=ファーストクラス
1=2番目のクラス

配列内で、小さなテストスクリプトを機能させることができます。

助言がありますか?

4

5 に答える 5

5
<?php echo (mt_rand(0,1) == 0 ? 'firstclass' : 'secondclass'); ?>
于 2013-01-01T23:09:35.510 に答える
4

このような?:

$words = array('firstclass', 'secondclass');
$randomWord = $words[mt_rand(0,1)];
于 2013-01-01T23:08:15.200 に答える
3

または...

class="a-prefix-<?=number_format(mt_rand(0,1));?>"

CSSクラスは、アンダースコア、ダッシュ、または文字で開始する必要がありますが、その後に数字を含めることができます。

于 2013-01-01T23:17:01.333 に答える
2

次の2つの可能性しかない場合は、 3項スタイルのifステートメントを使用できます。

<?=(mt_rand(0,1) == 0) ? 'firstclass' : 'secondclass'?>
于 2013-01-01T23:08:52.433 に答える
2

あなたがそれを言うつもりなら0 = firstclass1 = secondclassなぜこのようにarray_randを使用しないのですか?

$classes = array(
    'firstclass',
    'secondclass'
);

$randClass = $classes[array_rand($classes)];

echo $randClass;

これにより、必要に応じてクラスを追加することもできます。

于 2013-01-01T23:16:17.003 に答える