Autor | Zpráva | ||
---|---|---|---|
Daniel de Luigi Profil * |
#1 · Zasláno: 28. 7. 2013, 16:55:21
Zdravím,
nemohl jsem přijít na to, jak to udělat, ale nakonec jsem na něoc přišel. Hledám, jestli se text vyskytuje 3x v proměnné. Pokud ano, odešle se zpráva. Napadlo mě to jen takto: $y = "[quote]"; $najdi = StrChr($message,$y); if($najdi) { $nalezene++; if($nalezene == 3) { $nalezene = 0; die("zpráva.."); } } |
||
Monkeys Profil * |
#2 · Zasláno: 28. 7. 2013, 17:19:53
Daniel de Luigi:
Nerozumiem ako ze 3x v premennej ? Ak si myslel 3x v neakom stringu tak potom neako takto. $str = "[quote] bla bla bla bla [quote] bla bla bla ... [quote] bla bla bla ..."; if(preg_match_all("/\bquote\b/i", $str, $match)) { if(count(array_shift($match)) == 3) { echo "OK"; } else { echo "Nenaslo"; } } M. |
||
Daniel de Luigi Profil * |
#3 · Zasláno: 28. 7. 2013, 17:36:41
[#2] Monkeys Díky, ale bohužel nefunguje :(
|
||
Alphard Profil |
#4 · Zasláno: 28. 7. 2013, 17:43:25
|
||
Daniel de Luigi Profil * |
#5 · Zasláno: 28. 7. 2013, 18:11:16
Nějak tomu nerozumím, ale
if(substr_count($message, '[quote]', 3)) { die("Test"); } |
||
Alphard Profil |
#6 · Zasláno: 28. 7. 2013, 18:23:59
Tu 3 nezadávejte jako žádný parametr, porovnávejte návratovou hodnotu funkce.
|
||
peta Profil |
Daniel de Luigi: Mozna by bylo dobre kliknout na link v [#4] Alphard, podivat se, jak se ta funkce pouziva (Example #1), jake ma parametry a tak.
Tys zadal parametry tak, ze zacne hledat od znaku na pozici 3, coz je ctvrty znak. Pokud mas $y = "[quote]";, pak zacina hledat na az "ote]", coz se s '[quote]' neshoduje, nevypise Test. |
||
Daniel de Lugi Profil * |
#8 · Zasláno: 29. 7. 2013, 16:57:25
Bohuzel, nefunguje to..
|
||
Jan Tvrdík Profil |
#9 · Zasláno: 29. 7. 2013, 17:57:16
if (substr_count($message, '[quote]') >= 3) { // ... } |
||
Daniel de Lugi Profil * |
#10 · Zasláno: 29. 7. 2013, 19:06:27
Bohuzel, ani toto :/
|
||
Joker Profil |
#11 · Zasláno: 29. 7. 2013, 19:08:44
Daniel de Lugi:
Nějaký konkrétnější popis problému než „nefunguje“? |
||
Daniel de Lugi Profil * |
#12 · Zasláno: 29. 7. 2013, 19:27:41
Nic vic nemam co napsat. Dal jsem tam to, co sem postnul Jan Tvrdík.. Hodil jsem tam die("Chyba"); a nic.. Pusti to dal
|
||
Monkeys Profil * |
#13 · Zasláno: 29. 7. 2013, 20:31:32
Daniel de Lugi:
ak to mas napisane ako v #5 bode tak to znamena ze podmienka bola splnena. Klauzula die sa uz myslim nepouziva ked tak pouzi vynimky try, catch, Exception. M. |
||
peta Profil |
Mi to funguje spravne. Asi mas spatne tvuj kod.
<?php $str = "[quote] bla bla bla bla [quote] bla bla bla ... [quote] bla bla bla ..."; // #2 radek 1 $patt = "[quote]"; echo substr_count($str, $patt); //php.net example1 radek 2 -- vypise 3 $nalezene = substr_count($str, $patt); //php.net example1 radek 2 if($nalezene == 3) // diskuze #1 radek 6 (nebo #5 radek 1) -- vypise se Je tam 3x. {echo '<br>Je tam 3x.';} else {echo '<br>Je tam mene nez 3x nebo vice nez 3x.';} ?> |
||
Časová prodleva: 11 let
|
0