Autor Zpráva
Návštěvník
Profil *
// 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 *
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.

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: