W jaki sposób mogę zmienić ustawienia strpos tak, aby wielkość liter nie była rozróżniana. Dzieje się tak dlatego, jeśli jest MadBike, a wyszukiwane hasło to rower nie spowoduje wyświetlenia mi linku. Moim głównym zmartwieniem jest szybkość kodu.Jak zrobić niewrażliwą obudowę strpos?
<?php
$xml = simplexml_load_file('test.xml');
$searchterm = "bike";
foreach ($xml->product as $product) {
if (strpos($product->name, $searchterm) !== false) {
echo $product->link;
} }
?>
Czy jest tak szybki jak strpos? – EnexoOnoma
Nie, ale jest nieco szybszy niż przy użyciu 'strtolower()'; średnio ("stripos") wydaje się trwać około 2,5 razy dłużej (niż 'strpos'). Z drugiej strony, nadal możesz to robić ("stripos") milion razy na sekundę, więc nie martwiłbym się tak bardzo - przedwczesna optymalizacja jest źródłem wszelkiego zła. – Dereleased
Teoretycznie żadne rozwiązanie nie może być, ponieważ trzeba dokonać dalszych porównań. Ale tutaj są pewne dane: http://lzone.de/articles/php-string-search.htm – Turnsole