當使用此代碼對象轉換爲數組:不同的方式來使用PHP
$array=(array)$yourObject;
$yourObject
轉換到索引的陣列的屬性,但如何可以看作一個陣列,這些裝置進行轉換,所述$yourObject
是一個索引$array
和I 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一個變量,但我不知道類型的這一點,我想對於任何類型的變量(字符串,數組,對象,...) 例如,我認爲我必須有這種類型的示例輸出:
輸出爲$ 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返回當前的結果沒有錯誤。
能否請你澄清你的問題?這有點難以理解。 – mc10
'//不好。我想通過$ var3作爲一個數組的索引!「這是什麼意思? – phant0m
我再次編輯了我的問題。 –