2016-12-11 8 views
0

私はPHPを初めて使用しています。 ストーリーはこのようなものです:foreachループ内にif/else条件があります。各ifはいくつかの値を返します。私は外部、SQLテーブルなどの異なるクエリを使用したいと思います。しかし、これらの変数を外部でどのように使うかはわかりません。基本的には、エコーで印刷された変数をif条件の外で使用したいと考えています。事前に感謝しています!foreach内の変数とifループ内の変数へのアクセス

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)); 

} 
+0

irreleventタグは使用しないでください。私はmysqlを削除しました – e4c5

答えて

0

foreach以外ではvarを直接使用することはできません。

つの方法は:

  • あなたは
  • はあなたが内側に供給し、後に使用しますことを、ループの前に作成された配列を使用してエコーの代わりに、foreachの内部の使用を置く
+0

あなたの素早い答えをありがとう。エコーの代わりに別の条件を使いたいのですが、すでにif/else文があるので混乱しています。私は実際に$ nouredus変数を別のテーブルに照会して、その値を比較して更新する必要があるかどうかを調べる必要があります。 –

+0

@AdrianZ。 else if(test2){statement2;}/*ここに他のものを加えることができる*/else {else statement;} 'これは? – Blag

+0

私はこれを認識していますが、私は上記の条件の1つで作成された変数を条件付けたいので、私の場合はうまくいきません。だから私は配列を供給すべきだと思いますよね? –

関連する問題