2 回答
TA贡献1850条经验 获得超11个赞
只需在 URL 中使用多维数组,例如:
test.php?key1=1&key2=2&myserver[state]=1&myserver[running]=2&myserver[mem]=3
如此简单的脚本
<?php
echo '<pre>';
echo json_encode($_GET, JSON_PRETTY_PRINT);
会给你
{
"key1": "1",
"key2": "2",
"myserver": {
"state": "1",
"running": "2",
"mem": "3"
}
}
当然,如果需要,您也可以使用具有相同命名规则的 POST 请求。
TA贡献2003条经验 获得超2个赞
为了创建嵌套的 JSON 对象,您需要在数组中创建数组。
例如
$example = [
'key1' => 'foo',
'key2' => 'bar',
'key3' => [
'subkey1' => 'foo',
'subkey2' => 'bar',
],
];
当运行它时json_encode(),它会导致
{
"key1": "foo",
"key2": "bar",
"key3": {
"subkey1": "foo",
"subkey2": "bar"
}
}
也没有必要像这样加载表单数据 –
$formdata = [
'state' => $_POST['state'],
'uassip' => $_POST['uassip'],
'uassipport' => $_POST['uassipport'],
'c_uacminrtpport' => $_POST['c_uacminrtpport'],
'c_uacmaxrtpport' => $_POST['c_uacmaxrtpport'],
'c_cps' => $_POST['c_cps'],
'c_totalcalls' => $_POST['c_totalcalls'],
'c_maxchannels' => $_POST['c_maxchannels'],
'c_duration' => $_POST['c_duration'],
'c_to' => $_POST['c_to'],
'c_uacxml' => $_POST['c_uacxml'],
];
因为$_POST已经包含您正在尝试重新创建的结构。您只需将发布数据分配给新变量即可。
另一方面,我强烈建议您查看 PSR PHP 标准,它们将极大地帮助提高代码可读性和代码结构:) https://www.php-fig.org/psr/
- 2 回答
- 0 关注
- 136 浏览
添加回答
举报