Autor | Zpráva | ||
---|---|---|---|
gardener Profil |
#1 · Zasláno: 21. 4. 2009, 16:50:25
Zdravím,
Mám jeden dotaz: pokud bych chtěl procházet více polí a vypisovat pouze záznamy které se schodují s maskou, mohu k procházení více polí použít foreach, nebo musím do sebe foreache vnořovat? Zatím bych to udělal takto : <?php $mobil = "774231111"; $mobil_predvolba=(substr($mobil,0,3)); $pole_vodafone = array ("608","774","775","776","777"); $pole_tmobile = array ("603","604","605","730","731","732","733","734","735","736","737","738","739"); $pole_o2 = array ("601","602","606","607","720","721","722","723","724","725","726","727","728","729"); foreach ($pole as $value) {//Tady by me zajimalo jestli jde urcit vice pole k prochazeni if($value==$mobil_predvolba) { echo "$value\n\r"; } } ?> Tuší někdo, zda je něco takového u foreach možné, nebo je třeba použít jiný způsob? Díky za každou radu.. |
||
Jan Tvrdík Profil |
#2 · Zasláno: 21. 4. 2009, 16:56:59 · Upravil/a: Jan Tvrdík
gardener:
<?php $mobil = "774231111"; $mobil_predvolba=(substr($mobil,0,3)); $predvolby = array( 'vodafone' => array ("608","774","775","776","777"), 'tmobile' => array ("603","604","605","730","731","732","733","734","735","736","737","738","739"), 'o2' => array ("601","602","606","607","720","721","722","723","724","725","726","727","728","729") ); foreach ($predvolby as $operator => $predvolba) { if (in_array($mobil_predvolba, $predvolba)) { echo $operator; break; } } |
||
AM_ Profil |
#3 · Zasláno: 21. 4. 2009, 17:28:11
Jan Tvrdík napsal správné řešení.
Ale obecně k dotazu, můžeš použít $sjednoceni = array_merge($pole1, $pole2....); foreach ($sjednoceni as [$key=>] $val){ ... } |
||
gardener Profil |
#4 · Zasláno: 21. 4. 2009, 21:24:55
Díky za radu, to se bude hodit znát to..
Ještě by mě zajímalo, Jan Tvrdík vlastně vytvořil pole polí ale jak by se dalo zpětně určit z kterého pole předvolba pochází: Chtěl bych totiž právě na základě výběru jednoho ze 3 polí obarvovat číslo jednou ze tří barev (červená,růžová,modrá).. Takže nyní dostanu výpis názvu pole ve kterém je předvolba ale co kdybych chtěl na základě tohoto třeba vkládat inline CSS tag, nebo parametr? |
||
AM_ Profil |
#5 · Zasláno: 21. 4. 2009, 22:38:10
gardener
Vždyť to tam vidíš, „ if (in_array($mobil_predvolba, $predvolba)) { echo $operator;“ v proměnné $operator máš klíč nadřazeného pole, v $predvolba je hodnota, kterou tvoří podřazené pole. |
||
Časová prodleva: 15 let
|
0