Autor | Zpráva | ||
---|---|---|---|
PPetr Profil * |
#1 · Zasláno: 23. 5. 2014, 15:27:46
Ahoj, poradí prosím někdo zkušený v php, jak napsat podmínku pro vypsání poslední hodnoty v poli?
Mám takové pole $arr = array(0=>'aaa',1=>'bbb',2=>'ccc',3=>'page-19'); když poslední hodnota v poli odpovídá zadání "page" a "-" a "jakekoliv číslo vetší > 0" jinak $err = '1'; Děkuji za případnou pomoc |
||
Taps Profil |
PPetr:
<? $arr = array(0=>'aaa',1=>'bbb',2=>'ccc',3=>'page-19'); $hodnota = array_pop($arr); if(preg_match('~[1-9]{2}~',$hodnota,$vystup)){ echo $vystup[0]; } ?> |
||
Kcko Profil |
#3 · Zasláno: 23. 5. 2014, 15:59:37
$arr = array(0=>'aaa',1=>'bbb',2=>'ccc',3=>'page-19'); echo getLastItem($arr) ? '1' : '0'; function getLastItem(array $arr) { $last = end($arr); if (strpos($last, 'page-') !== FALSE) { list(, $num) = explode('page-', $last); $num = (int) $num; return $num > 0 ? TRUE : FALSE; } return FALSE; } |
||
PPetr Profil * |
#4 · Zasláno: 23. 5. 2014, 16:11:59 · Upravil/a: PPetr
Taps:
Díky moc, vypadá to jednouše, já co jsem sesmolil bylo na 50 řádků :-) a ještě to nefungovalo. Bylo ny prosím možno tvůj příklad opravit, aby script vrátit chybu, aby čísla nezačínala 0 ? Děkuji Taps: Teď se ještě dívám, že to bere z jakým koliv textem před lomítkem :-( page-19, pages-19, nic-19... což mi nepomůže, page je klíčové slovo, podle něj poznám, že se jedná o stránkování :-( Díky |
||
Joker Profil |
#5 · Zasláno: 23. 5. 2014, 16:31:47
PPetr:
„Teď se ještě dívám, že to bere z jakým koliv textem před lomítkem“ Protože v dotazu takový požadavek nebyl a telepatii zatím neovládáme. Já osobně bych udělal explode přes pomlčku a pak porovnal, jestli první prvek je "page" a vzal druhý. |
||
PPetr Profil * |
#6 · Zasláno: 23. 5. 2014, 16:34:00
Joker:
„Protože v dotazu takový požadavek nebyl a telepatii zatím neovládáme.“ Ano, nebyl, jelikož jsem nevěděl, že php bere číslo 019 jako číslo :-( Omlouvám se.. |
||
Taps Profil |
#7 · Zasláno: 23. 5. 2014, 16:46:35
PPetr:
Tak zkus přesněji vydefinovat požadavky |
||
PPetr Profil * |
#8 · Zasláno: 23. 5. 2014, 17:22:56 · Upravil/a: PPetr
Taps:
Tak jak jsi mi to napsal, s tím, že pokud poslední hodnota v tom poli bude získat číslo při správném zapisu z poslední hodnoty pole: (page, pomlčka, číslo nezačínající nulou) page-1 page-15 page-258 atd.. nedělat nic když poslední hodnota pole nebude "text". vyhodit chybu když poslední hodnota pole bude "text" ale nebude platný format page-01 page-001 atd.. page--01 page-0-1- -page-0-1- atd.. snad je to popsané lépe, děkuji A page-0 je taky špatný zápis který by měl vyvolat chybu ;-) |
||
Časová prodleva: 10 let
|
0