亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

從 php json_encode() 調用 javascript 變量時出錯

從 php json_encode() 調用 javascript 變量時出錯

PHP
MM們 2023-04-28 14:49:19
我在從 php 調用 javascript 變量時遇到問題json_encode()。在 javascript 中,我無法獲得 array.length 因為有標簽1:。我想要[res_tmp]數組獲取像[sample]數組一樣的格式(沒有標簽數字數組,例如:1:,2:)。感謝您的幫助?;芈暎伲簉es_tmp: {0: null,1: {name: "AAA",sort: 1},2: {name: "DDD",sort: 2}, ...回聲(我希望):res_tmp: { null,{name: "AAA",sort: 1},{name: "DDD",sort: 2}, ...這是我的代碼:    $tmp = [        [         "name"  => "1.AAA",         "sort"  => 1,      ],[         "name"  => "10.CCC",         "sort"  => 10,      ],[         "name"  => "11.BBB",         "sort"  => 11,      ],[         "name"  => "2.DDD",         "sort"  => 2,      ],[         "name"  => "3.EEE",         "sort"  => 3,      ],    ];for ($i=0; $i < count($tmp); $i++) {     $res_tmp[ $tmp[$i]['sort'] ] = $tmp[$i];}$nul = [0,4,5,6,7,8,9,12];for ($j=0; $j < count($nul); $j++) {   $res_tmp[ $nul[$j] ] = null;}$val = [    "sample" => $tmp,     "res_tmp" => $res_tmp, ];echo json_encode($val);// echo "<pre>",print_r($val),"</pre>";
查看完整描述

1 回答

?
largeQ

TA貢獻2039條經驗 獲得超8個贊

這是一個javascript方法。


您在這里擁有的不是數組而是JSON 字典,它是一個對象。您可以使用 Object.keys 在 JavaScript 中獲取它的長度:


let keys = Object.keys(res_tmp);

這將為您提供鍵數組。您可以迭代它并訪問這些值。像這樣:


let res_tmp = {

? 0: null,

? 1: {

? ? name: "AAA",

? ? sort: 1

? },

? 2: {

? ? name: "DDD",

? ? sort: 2

? }

}

let keys = Object.keys(res_tmp);

let arr = [];

for (let j=0;j<keys.length;++j)

{

? let item = res_tmp[keys[j]];

? arr.push(item);

}

現在arr擁有你想要的回聲。


查看完整回答
反對 回復 2023-04-28
  • 1 回答
  • 0 關注
  • 156 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號