0

私は2つの変数を持っています:

  • $foo - client1、client2、client3 (オブジェクト配列)
  • $bar - 名前、ID、売上高 (文字列配列)

$foo->nameクライアント 1をエコーすると、成功した値が返されますが、次のようになります。

foreach ($foo as $key1 => $value1) {

  foreach ($bar as $key2 => $value2) {

    echo $value2->$value1; // THIS IS NOT WORKING

  }

}

私がはっきりしていることを願っています。これらの値を返したい:

client1's name
client1's id
client1's turnover
client2's name 
client2's id
etc...

これは成功です:

foreach($foo as $client) {

  echo $client->name."<br>";
  echo $client->id."<br>";
  echo $client->billable."<br>";

}

クライアント名、彼のID、およびすべてのクライアントに対して請求可能かどうかを返します。しかし、上記のコードは機能しません。名前、ID、請求対象は次のように文字列に格納されます。

$bar = array ([0] => name, [1] => id, [2] => billable )
4

3 に答える 3

3

変数に意味のある名前を付け、中括弧を使用してアクセスします。

foreach ($clients as $i => $client) {

  foreach ($keys as $j => $key) {

    echo $client->{$key};

  }

}
于 2013-02-13T14:09:44.707 に答える