如何用PHP解析JSONP

sim*_*lue 5 php json

可能重复:
在PHP中提取JSONP结果集

我得到了以下格式的回复.我在如何进入"插件"变量并访问其中的其他变量时遇到麻烦.我使用过json_decode(),但我无法访问变量.

Plugin
(
{ 

"plugin_a":"abc", 
"plugin_b":"abc", 
"plugin_c":"abc" 
}
)
Run Code Online (Sandbox Code Playgroud)

我试过了

$a = json_decode($json,true);
echo  $a['plugin_a'];
Run Code Online (Sandbox Code Playgroud)

我没有任何输出.

echo var_dump($json); 给我

string 'Plugin({
  "plugin_a":"abc",
  "plugin_b":"abc",
  "plugin_ce":"abc" })'
Run Code Online (Sandbox Code Playgroud)

gen*_*sis 0

尝试 substr();

http://sandbox.phpcode.eu/g/40c20.php

<?php
$json = substr('Plugin
(
{ 

"plugin_a":"abc", 
"plugin_b":"abc", 
"plugin_c":"abc" 
}
)', 9, -1);

print_r(json_decode($json));
Run Code Online (Sandbox Code Playgroud)

  • 更通用的方法是 preg_match 第一次开始(和最后一次结束)之间的所有内容。 (3认同)