このコードを使用する場合:
$array=(array)$yourObject;
convertのプロパティは配列のインデックスに$yourObject
変換しますが、1 つの配列として変換するにはどうすれば$yourObject
よいでしょうか。$array
echo $array[0]
質問の別の方法として、次のサンプル コードを参照してください。
<?php
$var1 = (string) 'a text';
$var2 = (array) array('foo', 'bar');
$var3 = (object) array("foo" => 1, "bar" => 2);
//It's OK.
foreach((array)$var1 as $v) {
echo $v."<br>";
}
echo "<hr>";
//It's OK.
foreach((array)$var2 as $v) {
echo $v."<br>";
}
echo "<hr>";
//It's NOT OK. I want through $var3 in output as an array with one index!
foreach((array)$var3 as $v) {
echo $v."<br>";
}
echo "<hr>";
?>
他の方法:
foreach で変数を使用したいのですが、この型についてはよくわかりません。型変数 (文字列、配列、オブジェクトなど) に対して foreach をエラーなしで動作させたいと考えています。たとえば、いくつかの this 型に対してこのサンプル出力が必要だと思います:
$var1 の出力:
array
0 => string 'a text' (length=6)
$var2 の出力:
array
0 => string 'foo' (length=3)
1 => string 'bar' (length=3)
$var3 の出力:
array
0 =>
object(stdClass)[1]
public 'foo' => int 1
public 'bar' => int 2
そして最後に、foreachがエラーなしで現在の結果を返すことを確認しました。