Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] Błąd Empty delimiter
pablo70
post 11.02.2010, 15:31:40
Post #1





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 11.02.2010

Ostrzeżenie: (0%)
-----


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ąć?
Go to the top of the page
+Quote Post
tua1
post 11.02.2010, 15:37:04
Post #2





Grupa: Zarejestrowani
Postów: 42
Pomógł: 0
Dołączył: 23.10.2009

Ostrzeżenie: (0%)
-----


możliwe ze $blang jest nullem
Go to the top of the page
+Quote Post
Fifi209
post 11.02.2010, 16:21:47
Post #3





Grupa: Zarejestrowani
Postów: 4 655
Pomógł: 556
Dołączył: 17.03.2009
Skąd: Katowice

Ostrzeżenie: (0%)
-----


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.


--------------------
Zainteresowania: C#, PHP, JS, SQL, AJAX, XML, C dla AVR
Chętnie pomogę, lecz zanim napiszesz: Wujek Google , Manual PHP
Go to the top of the page
+Quote Post
pablo70
post 12.02.2010, 11:26:16
Post #4





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 11.02.2010

Ostrzeżenie: (0%)
-----


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!
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 16.07.2025 - 18:48