| Autor | Zpráva | ||
|---|---|---|---|
| Návštěvník Profil * |
#1 · Zasláno: 28. 1. 2014, 16:06:00
// začátek třídy ...
public function searchBadWords(&$mes, $mode=1, $preg_match=true)
{
return array(1,2,3,array(1));
}
// konec třídy + vytvoření instance...Následuje volání searchBadWords a chci to vrácené pole převést na 4 proměnné. $s=''; if (!$util->searchBadWordsPrimitive($hobby,1) OR (list($c,$r,$m,$w)=$util->searchBadWords($hobby,3)) AND $c ) foreach ($w as $v) $s.=",$v"; Chybu dostávám: Undefined variable: w Kde je problém? |
||
| juriad Profil |
Je to ze stejného důvodu, proč funguje:
$cislo = 0
if ($cislo == 0 OR 1/$cislo > 0) {Jakmile je splněna první část, druhá se již nevykoná! A v tvém případě se nedefinuje proměnná $w. Obdobně pro AND. |
||
| Návštěvník Profil * |
#3 · Zasláno: 28. 1. 2014, 17:11:52
Ještě potřebuju poradit. Za jakých okolností list ( var1, var2, $m,$w může být "undefinated offset" index 2 a 3? V metodě mám:
return $mode==3 ? array($count1+$count3,$this->badWordsRating,$mes,$this->badWords) : $mes; a vrácené pole má jen dva elementy. Jenže badWords by mělo být deklarováno jako pole. |
||
|
Časová prodleva: 13 let
|
|||
0