我正在使用PHP在一個項目中傳遞一些數據給javascript。在我的PHP我有:爲什麼json_encoded對象會以javascript中的數組結尾?
<?php
$allprojects = $pages->find('projects')->children();
$transfer = array();
$i=0;
foreach ($allprojects as $p) {
$transfer[] = array(
'i' => $i,
'title' => $p->title()->value,
'url' => $p->url(),
'thumb' => thumb($p->children()->first()->images()->first(), array('width'=>170))
);
$i++;
}
?>
<script>
var projects = <?php print json_encode($transfer); ?>
</script>
如果我再嘗試使用這個變量projects
它是一個數組。 I .: .:
projects instanceof Array == true
我有點困惑,爲什麼這是這種情況。任何人都可以說明情況嗎?
要定義數組你在問爲什麼它是一個數組? – PeeHaa
我認爲他的意思是因爲關聯數組更像對象 - 儘管很多人並不知道JavaScript數組也可以具有非數字鍵。 –
@BrettZamir更有趣的是,它不是一個關聯數組;-) – PeeHaa