2017-04-21 6 views
1

私は、次の自動化を行うためのいくつかの問題を持っている:自動化

私は形からそのような$と$ Bなどの変数の多くを得ます。
私は取得した変数に応じて条件テストを自動化したいと思います。第一変数a、作業コードについては

$test = array('a','b'); 
for($i=0;$i<sizeof($test);$i++) 

は次のとおりです。第二変数b、作業コードについては

if ($postdata->a !=${$test[$i]}){echo "different";} else {echo "same";} 

です:

if ($postdata->b !=${$test[$i]}){echo "different";} else {echo "same";} 

私は自動化したいと思いますそれはこのような配列のおかげです:

if ($postdata->$test[$i] !=${$test[$i]}){echo "different";} else {echo "same";} 

しかし、$postdata->$test[$i]は、echo $ test [$ i]でも 'a'と 'b'を返します。 私はいくつかの "書き込み"を試みましたが、解決できませんでした。 ありがとうございます。

答えて

3

コードを$test[$i]for loopで複雑すぎる代わりに、代わりにforeachを使用してください。これがうまく動作することを願っています。

Try this code snippet herecontains sample input

<?php 
ini_set('display_errors', 1); 

$test=array('a','b'); 
foreach($test as $i => $value) 
{ 
    if ($postdata->{$value} != ${$value}) 
    { 
     echo "different"; 
    } 
    else 
    { 
     echo "same"; 
    } 
} 
+0

こんにちはサヒール、 それは正常に動作します! ありがとう、私はforeach関数をより深く見ていきます! いい夜を過ごす;) – Etienne

+0

@Etienneようこそ.... :) –