我想擁有一個「country」對象的javascript數組,這個對象在這個階段只有兩個屬性:name和geonameId。將php關聯數組解析爲javascript對象
我從一個數據庫中的這些國家,像這樣:
$sql = "SELECT name, geonameId FROM countryinfo";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
$rows = array();
while($row = $result->fetch_assoc()) {
$country["geonameId"]);
$rows[$row['geonameId']] = $row['name'];
}
}
$conn->close();
?>
然後我有這個JavaScript腳本,變成了PHP數組到一個javascript之一:
<script type="text/javascript">
var allCountries = <? echo json_encode($rows); ?>;
console.log(allCountries);
</script>
我只想把這一將鍵/值對排列到對象數組中,以便我可以更輕鬆地訪問將來可能添加的新屬性。目前的JavaScript陣列日誌到控制檯這樣的:
Object {0: "Netherlands Antilles", 49518: "Rwanda", 51537: "Somalia", 69543: "Yemen", 99237: "Iraq", 102358: "Saudi Arabia", 130758: "Iran", 146669: "Cyprus", 149590: "Tanzania", 163843: "Syria", 174982: "Armenia", 192950: "Kenya", 203312:...
如何鍵/值對的數組轉換爲從JavaScript對象(與重構一個數組,我會加入一個國家類和數組將包含Country對象)。
如何訪問序列化的PHP對象從JavaScript?我的嘗試是這樣的:'$ jsonObj = json_encode($ rows); $ conn-> close(); ?> <腳本類型= 「文/ JavaScript的」> VAR allCountries = JSON.parse($ jsonObj)' – BeniaminoBaggins
理想的情況下你的PHP腳本應該從蜜蜂XMLHttpRequest的使用客戶端叫那麼你的PHP腳本echo'es的JSON字符串,並使用var myArr訪問json對象= JSON.parse(xmlhttp.responseText);來自responseText屬性 –