在foreach中访问变量,从外部循环

时间:2016-12-11 15:51:29

标签: php

我是PHP的新手,我的代码卡住了,所以我在这里寻找帮助。 故事是这样的:我有一个foreach循环,里面有一些if / else条件。每个if返回一些我想要使用外部的值,用于不同sql表中的查询等。但我不知道如何让这些变量在外面工作。基本上我希望在if条件之外使用用echo打印的变量。提前谢谢!

foreach ($result as $a) {
    $current++;

    if (!empty($cautare)){

        //Daca nu are pret redus ia pretul intreg
       if (empty($pret[1])) { 

       $pretintreg=preg_replace('/\s+/', '', $pret[0]->innertext);
       $cautalira =  array('/£/', '/From/');
       $scoatelira = array('', '');
       $nouintreg = preg_replace($cautalira, $scoatelira , $pretintreg);
       echo '<br /> Produsul cu modelul ' . $a['model'] . ' este pe stoc si are pretul ' . $nouintreg.'<br />';

       } else {

       //Daca are pret redus il scoate
       $pretintreg=preg_replace('/\s+/', '', $pret[1]->innertext);
       $pretredus=preg_replace('/\s+/', '', $pret[0]->innertext);

       $cautalira =  array('/£/', '/From/');
       $scoatelira = array('', '');

       $nouintreg = preg_replace($cautalira, $scoatelira , $pretintreg);
       $nouredus = preg_replace($cautalira, $scoatelira , $pretredus);

       echo '<br /> Produsul cu modelul ' . $a['model'] . ' este pe stoc si are pretul intreg ' . $nouintreg. ' si pretul redus ' . $nouredus . '<br />';



       }
    }

    outputProgress($current, count($result));

}

1 个答案:

答案 0 :(得分:0)

你不能在foreach之外直接使用var。

两种方式:

  • 你把你的用处放在foreach中,而不是你回应
  • 您使用在循环之前创建的数组,您将在其中提供并在
  • 之后使用