У вас в голове каша.
http://php.net/manual/ru/control-structures.foreach.php
Перед тем, как писать, нужно научиться читать. Довольно простой совет, позволяющий избежать много глупых ситуаций.
Оператива будет быстро выжираться при росте количества изображений. Есть вариант с просадкой по камню, а не по мозгу:
function rand_unique($min, $max, $count){ $result = []; while (count($result) < $count) { $result[] = mt_rand($min, $max); $result = array_unique($result); } return $result;}
$numbers = rand_unique(1, 30000, 200);
Ну и тоже самое, но только с оптимизацией:
public static function rand_unique($min, $max, $count){ $result = []; for ($i = 0; $i < $count; $i++) { $result[] = mt_rand($min, $max); } $result = array_unique($result); while (count($result) < $count) { $number = mt_rand($min, $max); if (!in_array($number, $result)) { $result[] = $number; } } return $result;}
Я признаю тот факт, что 95% населения после двадцати лет развиваться отказывается. Всё к чему подобные прикасаются остаётся для них за гранью понимания. Более того, есть даже те, кто годами спрашивают на форумах одно и то же, но понимания от этого у них не прибавляется. И я рекомендую для подобных не писать ответы без пояснений о последствиях, не думать вместо них, не делать им курсачи\лабы\что_ещё_они_там_хотят_чужим_трудом, а сделать единственно верное - дать выбор и указать где подробнее ознакомиться с матчастью. Принимать выбор они должны сами. И сами должны своим умом доехать до ситуации и разобраться в ней раз уж они решили задавать вопросы, а не оплачивать труд и время программистов.
Советовать снимать индексы также не стоит по одной простой причине: форум достаточно хорошо индексируется и сюда приходят дети и домохозяйки, которые дальше первого ответа без пояснений не читают, что провоцирует дальнейшие джунгли в головах обывателей и дальнейшие глупые вопросы при появлении проблем из-за своих необдуманных действий.
Это в корне неправильно советовать так делать топикстартеру, пока он либо не будет уверен в том, что движок написан с поддержкой одинаковых никнеймов, либо пока он точно не поймёт перед этим действием, что последствия могут быть абсолютно любые: от возможности перерегистрировать его админский акк до возможности управления чужим аккаунтом.
Вне зависимости от того, кто перед нами: нефтяной магнат, кодер со стажем или просто дурак с говносайтом, совет по действиям в данной ситуации для всех них должен быть одним и технически верным. Негоже умалчивать о возможных проблемах в дальнейшем, ссылаясь на неосведомлённость вопрошающего.
netwind, ещё раз: отцепитесь от своего Vbulletin, речь не о нём. Я понимаю, ничего больше вы произнести не сможете, но всё же попробуйте активировать соображалку: топикстартер спрашивает не только про снятие индекса уникальности, а про смену кодировки поля таблицы. Это приведёт к тому, что часть никнеймов станут идентичными (о чём и сообщает фраза "Duplicate entry") для поиска по строковому равенству (а соответственно по всем JOIN'нам к данному полю) в любой выборке движка, которая опиралась на уникальность никнеймов. Вы не можете советовать снимать индексы уникальности не зная сорцев рассматриваемого движка.
Я так понимаю, у вас есть доступ к БД этого форума и вы готовы назвать точное количество пользователей в базе с одинаковыми юзернеймами? Или вы просто не допёрли ещё, что постом выше посоветовали ТС снять индекс уникальности и позволить при смене кодировки БД иметь в ней нескольких юзверей с одним логином, осилив головой лишь кусок логики "я такой классный, знаю слово Vbulletin, там при регистрации проверка же наверно есть, нахрена мне ещё о чём-то думать?".
Угу. А потом на первой же выборке по имени, а не по айдишнику, пользователи начнут получать удовольствие от коллизий.
Если не описаны в http://www.iana.org/assignments/media-types/media-types.xhtml (а ini там точно нету), тогда text/plain.
Феникс не может угаснуть. Реинкарнирует.