Пытается получить предмет случайно из массива ($colors
), не имея двух одинаковых цветов рядом друг с другом.php случайный элемент из массива no siblings
<div class="list">
<?php
foreach ($team as $member):
$index++;
?>
<div class="member location-<?php echo strtolower($member->location); ?>">
<a style="background: #FFF url('<?php echo $member->profileImage; ?>') no-repeat;" data-start-date="<?php echo $member->startDate; ?>">
<?php shuffle($colors); // Shuffle the array ?>
<span class="name" style="background-color: #<?php echo array_pop($colors)->color; ?>"><?php echo $member->name; ?></span>
<span class="job-title"><span class="text"><?php echo $member->jobTitle; ?></span></span>
</a>
</div>
<?php endforeach; ?>
</div>
Прямо сейчас у меня есть случаи, когда я получаю цвет рядом друг с другом.
Как я могу получить каждый раз другой цвет? Я хотел бы упомянуть, что count($team) > count($colors)
(больше).
UPDATE:
$ цвета выглядит (я только что напечатанный 3 пунктов, количество выше)
array(18) {
[0]=>
object(stdClass)#112 (1) {
["color"]=>
string(6) "5ebedb"
}
[1]=>
object(stdClass)#111 (1) {
["color"]=>
string(6) "c75d40"
}
[2]=>
object(stdClass)#110 (1) {
["color"]=>
string(6) "faaf37"
}
}
Так что это на самом деле не что-то случайное;) –
можно перетасовать только один раз массив collors перед Еогеаспом, также вопрос вашего массив $ цветов имеют различные цвета или есть некоторые из них более одного раза? – knetsi
Всегда будут случаи, когда у вас есть цвета рядом друг с другом, как вы делаете сейчас. Это интересный вопрос. Что мы должны понимать из «того же цвета» (мы говорим в одном цветовом диапазоне?)? Вам нужно что-то сказать, когда два цвета «не одинаковы». – Andrew