Autor | Zpráva | ||
---|---|---|---|
peto Profil * |
#1 · Zasláno: 29. 12. 2006, 00:47:38
mam text "prveslovo zvysok spravy z viac slov" a potrebujem aby v premenej $prva bolo prve slovo a v premenej $druha zvysok spravy neviete niekto ako to spravit? moc by ste mi pomohli...
|
||
nightfish Profil |
#2 · Zasláno: 29. 12. 2006, 01:06:51
[pre]<?php
$str = "prveslovo zvysok spravy z viac slov"; list($prva,$druha) = split(" ", $str, 2); echo "prva: $prva<br >druha: $druha"; ?> |
||
D1ce Profil |
#3 · Zasláno: 29. 12. 2006, 02:11:39
peto K čemu by to bylo dobré? Opravdu by mě to zajímalo.
nightfish Výstup, dle mě chybný: prva: prveslovo druha: zvysok spravy z viac slov Tady je moje řešení: /** * Vstupni promenna */ $str = 'prveslovo zvysok spravy z viac slov'; /** * Inicializace promenne $matches */ $matches = ''; /** * Prvni zavorka odpovida vsem retezcum, ktere * neobsahuji mezeru. Druha zavorka odpovida * vsem retezcum skladajicich se z 2 retezcu, ktere * neobsahuji mezeru a je meze nimi mezera * @link http://cz.php.net/manual/en/function.preg-match.php */ preg_match('/([^ ]+) ([^ ]+ [^ ]+)/m', $str, $matches); /** * Prirazeni promenne odpovidajici prvni zavorce */ $prva = $matches[1]; /** * Prirazeni promenne odpovidajici druhe zavorce */ $druha = $matches[2]; /** * Promennou $matches nepotrebujeme, tak ji smazneme */ unset($matches); /** * Pro spravne formatvoani */ echo '<pre>'; /** * Dump z obou promennych * (fce ktera vypise obsah a typy) * @link http://cz.php.net/manual/en/function.var-dump.php */ var_dump($prva, $druha); |
||
llook Profil |
#4 · Zasláno: 29. 12. 2006, 04:23:23
D1ce
No já nevím. "Zvysok spravy" pokud vím slovensky znamená "zbytek zprávy", řekl bych, že nightfishův kód nemá chybný výstup. Akorát místo split bych použil explode. list($prva,$druha) = explode(" ", $str, 2); |
||
D1ce Profil |
#5 · Zasláno: 29. 12. 2006, 04:53:36
llook
Tak to se hluboce omlouvám, moje chyba. No prostě niemumím po slovenski, sorry. Dovolte mi abych si taky mírně v mezích pravidel tohoto fóra rýpnul. > "Zvysok spravy" pokud vím slovensky znamená "zbytek zprávy" Chápu, ale nemá tam namísto slovensky být česky? > Akorát místo split bych použil explode. > list($prva,$druha) = explode(" ", $str, 2); split() je o dva znaky kratší ;) , ale plně by vás omlouvalo, kdyby byl explode() rychlejší, což jsem ovšem moc líný testovat. |
||
D1ce Profil |
#6 · Zasláno: 29. 12. 2006, 04:56:12
>> list($prva,$druha) = explode(" ", $str, 2);
> split() je o dva znaky kratší ;) , ale plně by vás omlouvalo, kdyby byl > explode() rychlejší, což jsem ovšem moc líný testovat. Co se ovšem neomlouvá, jsou dvoité uvozovky, ty jsou totiž o nějaké drobné pomalejší než jednoduché. ;) |
||
peto Profil * |
#7 · Zasláno: 29. 12. 2006, 12:57:45
D1ce
potrebujem to na spracovanie smsiek cez GET dostanem text spravy a pre slovo je identifikacia usera... diq vsem frci to a sorry za tu slovencinu :) |
||
peto Profil * |
#8 · Zasláno: 29. 12. 2006, 12:58:08
*prve slovo
|
||
nightfish Profil |
#9 · Zasláno: 29. 12. 2006, 13:07:42
diq vsem frci to a sorry za tu slovencinu :)
netřeba se omlouvat, pravidla ji povolují... |
||
llook Profil |
#10 · Zasláno: 29. 12. 2006, 15:06:26
D1ce
Není třeba testovat, stačí kouknout do manuálu: If you don't require the power of regular expressions, it is faster to use explode()... A dvojité uvozovky pomalejší nejsou, to je pověra. Říká se, že provádění zpomaluje jakési "hledání proměnných". Jenže toto hledání probíhá už na úplném začátku zpracování skriptu - při lexikální analýze - a obyčejný text bez proměnných PHP zpracuje prakticky stejně rychle v kterýchkoli uvozovkách. Skripty zpomalují úplně jiné věci. Když už bychom chtěli být tak důslední... Dokumentační komentáře jsou v PHP5 nepatrně pomalejší než obyčejné komentáře, je to důvod je nepoužívat? |
||
D1ce Profil |
#11 · Zasláno: 29. 12. 2006, 15:32:16
llook
> Když už bychom chtěli být tak důslední... Dokumentační komentáře jsou v PHP5 nepatrně pomalejší než obyčejné komentáře, je > to důvod je nepoužívat? ;) Sice jsem v kódu nedokumentoval ty správné elementy, tak aby se to projevilo na výsledné dokumentaci, ale zavádím si nové(snad dobré) návyky. phpdoc.org |
||
Časová prodleva: 17 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0