最初,我使用URL获取JSON文件,然后使用file_get_contents(url)进入php变量以获取传递给它的JSON字符串。由于我的问题,我假设这会将变量初始化为特殊的JSON类型。如果我尝试创建变量“动态”(硬编码问题的目的)和使用json_encode($ JSON)到$ data3的,它并没有在某种程度上,我的JS FullCalendar事件可以读取它格式化。我试图通过传递一个与$ data完全相同的直接字符串来回避$ data2作弊。无法将我的JSON供稿用于日历。因此,我需要以某种正确的语法获取$ data3,同时保留JSON属性。如何处理json_encode输出的语法?page-template.php$url = get_stylesheet_directory_uri() . '/calendar.json';$data = file_get_contents($url);$data2 = '{ "className" : "mooncenter", "title" : "big energy", "start" : "2019-04-23" }';$json= '{ "className" : "mooncenter", "title" : "big energy", "start" : "2019-04-23" }';$data3 = json_encode($json);echo $data;echo $data2;echo $data3;回声输出。//$data outputs{ "className" : "mooncenter", "title" : "big energy", "start" : "2019-04-23" }//$data2 outputs the same, but does not work because not json encode?{ "className" : "mooncenter", "title" : "big energy", "start" : "2019-04-23" }//$data3 outputs weirdly, with double quotes or slashes depending on// if I encapsuled the PHP init with '' or "". Below is one example."{ \"className\" : \"mooncenter\", \"title\" : \"big energy\", \"start\" : \"2019-04-23\" }"我需要$ data3看起来像前两个一样,同时保留json编码属性。这可能吗?这将解决我的动态JSON创建问题,而无需传递URL,也使我永恒。
3 回答
当年话下
TA贡献1890条经验 获得超9个赞
好的,尝试添加更改代码,如下所示
$myObj->name = "John";
$myObj->age = 30;
$myObj->city = "New York";
$myJSON = json_encode($myObj);
echo $myJSON;
输出
{"name":"John","age":30,"city":"New York"}
这肯定会为您提供帮助,通过这种方式,您无需将键值对手动作为字符串放置:)欢呼
守着星空守着你
TA贡献1799条经验 获得超8个赞
由于我的问题,我假设这会将变量初始化为特殊的JSON类型。
你不对 json_encode()
将PHP对象(通常是数组)转换为JSON字符串。PHP中没有JSON类型。
您的文本文件已经包含JSON文本,因此使用file_get_contents()
已经将该文件的内容加载到变量中就可以得到一个JSON字符串。您无需再次编码。发生任何错误的地方都在此代码之外。
繁花不似锦
TA贡献1851条经验 获得超4个赞
$data3['name'] = "John";
$data3['age'] = 30;
$data3['city'] = "New York";
$myJSON = json_encode($myObj);
echo $myJSON;
//decode
$phpArray = json_decode($myJSON, true);
print_r($phpArray);
- 3 回答
- 0 关注
- 131 浏览
添加回答
举报
0/150
提交
取消