js对象转json php中,怎样将JS中的json对象转换成PHP可以识别的json对象

你需要先将js对象转换为json,再使用json_decode函数转为php对象。

$str = <<

{

a: {

b: '1',

c: '2',

d: '3'

},

e: {

f: '4',

g: '5',

h: '6'

},

i: [

{

j: '7',

k: '8',

l: '9'

},

{

m: '10',

n: '11',

o: '12'

},

{

p: '13',

q: '14 ',

r: '15'

}

],

s: '16',

t: '17',

u: '18',

v: false,

w: 'final',

x: '',

y: true,

z: true

}

STR;

$str = preg_replace(["/([a-zA-Z_]+[a-zA-Z0-9_]*)\s*:/", "/:\s*'(.*?)'/"], ['"\1":', ': "\1"'], $str);

var_dump($str);

var_dump(json_decode($str));

输出为:

string(418) "{

"a": {

"b": "1",

"c": "2",

"d": "3"

},

"e": {

"f": "4",

"g": "5",

"h": "6"

},

"i": [

{

"j": "7",

"k": "8",

"l": "9"

},

{

"m": "10",

"n": "11",

"o": "12"

},

{

"p": "13",

"q": "14 ",

"r": "15"

}

],

"s": "16",

"t": "17",

"u": "18",

"v": false,

"w": "final",

"x": "",

"y": true,

"z": true

}"

object(stdClass)#2 (11) {

["a"]=>

object(stdClass)#1 (3) {

["b"]=>

string(1) "1"

["c"]=>

string(1) "2"

["d"]=>

string(1) "3"

}

["e"]=>

object(stdClass)#3 (3) {

["f"]=>

string(1) "4"

["g"]=>

string(1) "5"

["h"]=>

string(1) "6"

}

["i"]=>

array(3) {

[0]=>

object(stdClass)#4 (3) {

["j"]=>

string(1) "7"

["k"]=>

string(1) "8"

["l"]=>

string(1) "9"

}

[1]=>

object(stdClass)#5 (3) {

["m"]=>

string(2) "10"

["n"]=>

string(2) "11"

["o"]=>

string(2) "12"

}

[2]=>

object(stdClass)#6 (3) {

["p"]=>

string(2) "13"

["q"]=>

string(3) "14 "

["r"]=>

string(2) "15"

}

}

["s"]=>

string(2) "16"

["t"]=>

string(2) "17"

["u"]=>

string(2) "18"

["v"]=>

bool(false)

["w"]=>

string(5) "final"

["x"]=>

string(0) ""

["y"]=>

bool(true)

["z"]=>

bool(true)

}

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值