Autor Zpráva
gardener
Profil
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
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
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
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
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.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: