Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Błąd Empty delimiter
Forum PHP.pl > Forum > Przedszkole
pablo70
W kodzie napotkałem na błąd, który wyświetlany jest w ten sposób:

PHP Warning: strpos() [<a href='function.strpos'>function.strpos</a>]: Empty delimiter. in [ścieżka pliku] on line 53

Część kodu, w którym jest błąd:

  1. // Set default language to the user agent's most favorite one
  2. $browserLanguages = split(',', preg_replace('/(;q=\d+.\d+)/i', '', $_SERVER['HTTP_ACCEPT_LANGUAGE']));
  3. foreach ($browserLanguages as $blang) {
  4. if (strpos($this->getConf('languages'), $blang) !== false) {
  5. $conf['lang'] = $blang;
  6. break;
  7. }
  8. }


A linia, w którym server krzyczy o błędzie to:
  1. if (strpos($this->getConf('languages'), $blang) !== false) {


Czy orientuje się ktoś, gdzie jest błąd, jak go usunąć?
tua1
możliwe ze $blang jest nullem
Fifi209
Co zwraca getConf() ?

Swoją drogą wywal to split bo jest Ci niepotrzebne, tutaj wystarczy explode, swoją drogą w manualu masz wyraźnie napisane przy split, że zostanie usunięta w PHP 6 i nie zaleca się jej używać. Jeżeli tak bardzo potrzebujesz rozbijać wyrażeniami regularnymi (czego nie robisz [stąd propozycja explode]) to używaj preg_split.
pablo70
Tak, chyba $blang był nullem.

dodanie linii:

  1. if ($blang)


przed

  1. foreach ($browserLanguages as $blang) {


pomogło. Kod przestał generować wspomniany wyżej błąd. Dziękuję za pomoc!
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.