Пусть MySQL обрабатывает поиск.MySQL может использовать индексы, а array_search - нет.Только не забудьте объявить индекс в вашем столбце URL.Вы можете создать индекс с помощью следующего оператора SQL:
CREATE INDEX url_index ON your_table_name (url);
Если вы массово обновляете свои URL-адреса, вы можете заключить обновления в транзакцию, что ускоряет ее, потому что индекс будет сгенерирован зановоне для каждого отдельного оператора обновления.
START TRANSACTION;
[...your update statements go here...]
COMMIT;
Редактировать: О безопасности, потому что я видел это в одном из ваших комментариев.Если параметр предоставлен пользователем, вы хотите экранировать свои вводы с помощью mysql_real_escape_string()
:
mysql_query("SELECT * FROM table WHERE url = ('".mysql_real_escape_string($your_url)."'");
Для получения подробной информации о безопасности, пожалуйста, прочитайте руководство по PHP для mysql_real_escape_string () и / или Google о внедрении SQL