Autor | Zpráva | ||
---|---|---|---|
Kenik01 Profil |
#1 · Zasláno: 4. 10. 2012, 09:50:39
Zdravím,
potřebuji z popisku produktů najít věty které obsahují určité slovo. Popisek projedu: $result = preg_split('/(?<=[.?!;:])\s+/', $story, -1, PREG_SPLIT_NO_EMPTY); strpos ( $result[$i], $hledam ) Problém je že strpos nefunguje zcela korektně: hledám "léč" najde ve větách: string(149) "V posledních letech řady výzkuných studií našla nové využití této směsi bylin, včetně léčby různých forem rakoviny." string(82) "Pro své léčivé účinky se ze své domoviny rozšířila do celého světa." Nenajde: string(25) "léčila svého manžela." string(74) "léčí stařeckou hyperplasii prostaty a prostatismus mladších mužů -" Data mají v DB porovnávání utf8_czech_ci PHP script má kodování UTF-8 Fakt už nevím co s tím. |
||
panther Profil |
#2 · Zasláno: 4. 10. 2012, 10:25:28
Kenik01:
mb_strpos, obecne mb_* |
||
Jan Tvrdík Profil |
#3 · Zasláno: 4. 10. 2012, 10:31:01
Kenik01:
Zrovna pro tvůj případ bude stačit i strpos, akorát musíš správně interpretovat návratovou hodnotu. // nutno použít !==, != nebude fungovat správně, bude-li hledané slovo na začátku if (strpos ( $result[$i], $hledam) !== FALSE) { echo "Nalezeno"; } |
||
Kenik01 Profil |
Jan Tvrdík:
Díky funguje |
||
Časová prodleva: 12 let
|
0