php 数组 js 数组_PHP数组转换为js数组

背景:

当我们用mvc分层到时候,有时候需要初始化一些变量,并assign 至view的模版中,其中有一些是smarty这种引擎解析的php变量,有时候也需要来一发js解析的数组变量,以下例子就是简单拼接。

代码

//原始城市php 数组

$php_array=array (

1 =>

array (

0 => '安徽-ah',

101 => '合肥-hf',

102 => '安庆-aq',

103 => '蚌埠-bb',

104 => '巢湖-ch',

105 => '池州-cz',

106 => '阜阳-fy',

107 => '淮北-hb',

108 => '淮南-hn',

109 => '六安-la',

110 => '马鞍山-mas',

112 => '宁国-ng',

113 => '铜陵-tl',

114 => '芜湖-wh',

115 => '宣城-xc',

116 => '滁州-cz',

117 => '亳州-bz',

118 => '黄山-hs',

120 => '宿州-sz',

121 => '桐城-tc',

),

2 =>

array (

0 => '北京-bj',

201 => '北京-bj',

),

3 =>

array (

0 => '福建-fj',

301 => '福州-fz',

302 => '厦门-xm',

303 => '龙岩-ly',

305 => '漳州-zz',

306 => '莆田-pt',

307 => '泉州-qz',

309 => '武夷山-wys',

314 => '南平-np',

315 => '宁德-nd',

318 => '三明-sm',

),

4 =>

array (

0 => '甘肃-gs',

401 => '兰州-lz',

402 => '定西-dx',

405 => '平凉-pl',

407 => '临夏-lx',

409 => '酒泉-jq',

410 => '张掖-zy',

411 => '庆阳-qy',

412 => '武威-ww',

415 => '天水-ts',

416 => '白银-by',

3113 => '金昌-jc',

),

5 =>

array (

0 => '广东-gd',

501 => '广州-gz',

502 => '深圳-sz',

503 => '珠海-zh',

504 => '东莞-dg',

505 => '中山-zs',

507 => '汕头-st',

510 => '潮州-cz',

511 => '韶关-sg',

513 => '湛江-zj',

514 => '肇庆-zq',

515 => '茂名-mm',

516 => '梅州-mz',

518 => '佛山-fs',

520 => '惠州-hz',

521 => '江门-jm',

522 => '揭阳-jy',

524 => '清远-qy',

528 => '云浮-yf',

532 => '阳江-yj',

535 => '河源-hy',

550 => '汕尾-sw',

1012 => '揭东-jd',

8110 => '顺德-sd',

),

6 =>

array (

0 => '广西-gx',

601 => '南宁-nn',

602 => '柳州-lz',

603 => '桂林-gl',

604 => '北海-bh',

605 => '百色-bs',

608 => '贵港-gg',

610 => '玉林-yl',

612 => '钦州-qz',

613 => '梧州-wz',

618 => '防城港-fcg',

),

7 =>

array (

0 => '贵州-gz',

701 => '贵阳-gy',

702 => '遵义-zy',

703 => '兴义-xy',

705 => '安顺-as',

706 => '毕节-bj',

707 => '都匀-dy',

708 => '六盘水-lps',

709 => '凯里-kl',

710 => '铜仁-tr',

),

8 =>

array (

0 => '海南-hn',

801 => '海口-hk',

803 => '三亚-sy',

8101 => '儋州-dz',

),

9 =>

array (

0 => '河北-hb',

901 => '石家庄-sjz',

902 => '唐山-ts',

903 => '邢台-xt',

905 => '秦皇岛-qhd',

906 => '廊坊-lf',

907 => '邯郸-hd',

908 => '衡水-hs',

909 => '沧州-cz',

910 => '保定-bd',

911 => '张家口-zjk',

912 => '承德-cd',

3112 => '三河-sh',

),

10 =>

array (

0 => '河南-hn',

1001 => '郑州-zz',

1002 => '洛阳-ly',

1004 => '信阳-xy',

1005 => '新乡-xx',

1006 => '商丘-sq',

1007 => '三门峡-smx',

1008 => '濮阳-py',

1009 => '南阳-ny',

1011 => '焦作-jz',

1013 => '开封-kf',

1014 => '安阳-ay',

1016 => '鹤壁-hb',

1018 => '平顶山-pds',

1019 => '济源-jy',

1021 => '驻马店-zmd',

),

21 =>

array (

0 => '山东-sd',

1015 => '德州-dz',

2101 => '济南-jn',

2102 => '青岛-qd',

2103 => '烟台-yt',

2104 => '威海-wh',

2105 => '潍坊-wf',

2106 => '泰安-ta',

2107 => '枣庄-zz',

2109 => '淄博-zb',

2110 => '东营-dy',

2111 => '高密-gm',

2112 => '菏泽-hz',

2113 => '滨州-bz',

2114 => '聊城-lc',

2117 => '临沂-ly',

2118 => '济宁-jn',

2120 => '日照-rz',

),

11 =>

array (

0 => '黑龙江-hlj',

1101 => '哈尔滨-heb',

1102 => '大庆-dq',

1103 => '齐齐哈尔-qqhe',

1104 => '鹤岗-hg',

1106 => '佳木斯-jms',

1107 => '鸡西-jx',

1108 => '牡丹江-mdj',

1112 => '伊春-yc',

1116 => '绥化-sh',

1118 => '双鸭山-sys',

)

);

function get_provice_city_js($arrData=[],$jsVarName=''){

$js_result='';

$intCount=0;

foreach($arrData as $intProv => $arrAreaData)

{

$js_result .= $jsVarName.'['.$intCount++.'] = new Array(\''.$intProv.'-'.$arrAreaData[0].'\'';

//再循环省下面的城市

foreach($arrAreaData as $intCity => $strCity)

{

//如果是省份,忽略

if ($intCity == 0) {

continue;

}

$js_result .= ',\''.$intCity.'-'.$strCity.'\'';

}

$js_result .= ');'."\n";

}

return $js_result;

}

echo get_provice_city_js($php_array,'myProject.');

输出

myProject.[0] = new Array('1-安徽-ah','101-合肥-hf','102-安庆-aq','103-蚌埠-bb','104-巢湖-ch','105-池州-cz','106-阜阳-fy','107-淮北-hb','108-淮南-hn','109-六安-la','110-马鞍山-mas','112-宁国-ng','113-铜陵-tl','114-芜湖-wh','115-宣城-xc','116-滁州-cz','117-亳州-bz','118-黄山-hs','120-宿州-sz','121-桐城-tc');

myProject.[1] = new Array('2-北京-bj','201-北京-bj');

myProject.[2] = new Array('3-福建-fj','301-福州-fz','302-厦门-xm','303-龙岩-ly','305-漳州-zz','306-莆田-pt','307-泉州-qz','309-武夷山-wys','314-南平-np','315-宁德-nd','318-三明-sm');

myProject.[3] = new Array('4-甘肃-gs','401-兰州-lz','402-定西-dx','405-平凉-pl','407-临夏-lx','409-酒泉-jq','410-张掖-zy','411-庆阳-qy','412-武威-ww','415-天水-ts','416-白银-by','3113-金昌-jc');

myProject.[4] = new Array('5-广东-gd','501-广州-gz','502-深圳-sz','503-珠海-zh','504-东莞-dg','505-中山-zs','507-汕头-st','510-潮州-cz','511-韶关-sg','513-湛江-zj','514-肇庆-zq','515-茂名-mm','516-梅州-mz','518-佛山-fs','520-惠州-hz','521-江门-jm','522-揭阳-jy','524-清远-qy','528-云浮-yf','532-阳江-yj','535-河源-hy','550-汕尾-sw','1012-揭东-jd','8110-顺德-sd');

myProject.[5] = new Array('6-广西-gx','601-南宁-nn','602-柳州-lz','603-桂林-gl','604-北海-bh','605-百色-bs','608-贵港-gg','610-玉林-yl','612-钦州-qz','613-梧州-wz','618-防城港-fcg');

myProject.[6] = new Array('7-贵州-gz','701-贵阳-gy','702-遵义-zy','703-兴义-xy','705-安顺-as','706-毕节-bj','707-都匀-dy','708-六盘水-lps','709-凯里-kl','710-铜仁-tr');

myProject.[7] = new Array('8-海南-hn','801-海口-hk','803-三亚-sy','8101-儋州-dz');

myProject.[8] = new Array('9-河北-hb','901-石家庄-sjz','902-唐山-ts','903-邢台-xt','905-秦皇岛-qhd','906-廊坊-lf','907-邯郸-hd','908-衡水-hs','909-沧州-cz','910-保定-bd','911-张家口-zjk','912-承德-cd','3112-三河-sh');

myProject.[9] = new Array('10-河南-hn','1001-郑州-zz','1002-洛阳-ly','1004-信阳-xy','1005-新乡-xx','1006-商丘-sq','1007-三门峡-smx','1008-濮阳-py','1009-南阳-ny','1011-焦作-jz','1013-开封-kf','1014-安阳-ay','1016-鹤壁-hb','1018-平顶山-pds','1019-济源-jy','1021-驻马店-zmd');

myProject.[10] = new Array('21-山东-sd','1015-德州-dz','2101-济南-jn','2102-青岛-qd','2103-烟台-yt','2104-威海-wh','2105-潍坊-wf','2106-泰安-ta','2107-枣庄-zz','2109-淄博-zb','2110-东营-dy','2111-高密-gm','2112-菏泽-hz','2113-滨州-bz','2114-聊城-lc','2117-临沂-ly','2118-济宁-jn','2120-日照-rz');

myProject.[11] = new Array('11-黑龙江-hlj','1101-哈尔滨-heb','1102-大庆-dq','1103-齐齐哈尔-qqhe','1104-鹤岗-hg','1106-佳木斯-jms','1107-鸡西-jx','1108-牡丹江-mdj','1112-伊春-yc','1116-绥化-sh','1118-双鸭山-sys');

[Finished in 0.1s]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值