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 關注
- 161 瀏覽
添加回答
舉報