{
"DeviceTicketInfo ": {
"UserId ": 27,
"Ticket ": 18005956,
"DevInfo ": "sunsoft-123456 "
},
"AvailableStations ": [{
"Id ": 2,
"No ": 2,
"Name ": "01-SUNSOFT "
}]
}
Я хочу отобразить только UserId из приведенной выше строки json в php.
Пожалуйста помоги
Большое тебе спасибо!!!






Для любых форматированных строк или массивов json вы можете просто использовать встроенные функции PHP json_encode / json_decode.
Чтобы декодировать этот json, просто сделайте что-нибудь с функцией json_decode():
$jsonString = '{
"DeviceTicketInfo ": {
"UserId ": 27,
"Ticket ": 18005956,
"DevInfo ": "sunsoft-123456 "
},
"AvailableStations ": [{
"Id ": 2,
"No ": 2,
"Name ": "01-SUNSOFT "
}]
}';
$array = json_decode($jsonString, true);
Это вернет двумерный массив с парами key => value.
Вам нужно будет преобразовать jsonstring в PHP object, прежде чем получить доступ к его свойствам, json_decode() здесь ваш друг, то есть:
$_json = '{ "DeviceTicketInfo":{ "UserId":27, "Ticket ":18005956, "DevInfo ": "sunsoft-123456 "}, "AvailableStations ":[{ "Id ":2, "No ":2, "Name ": "01-SUNSOFT "}]}';
$_json = json_decode($_json);
print_r($_json->DeviceTicketInfo->UserId);
# 27
Вы также можете использовать true в качестве второго аргумента в json_decode($_json, true); для преобразования возвращенного object в ассоциативный array, после чего вы можете получить доступ к элементам, используя:
$_json['DeviceTicketInfo']['UserId'];
echo json_decode($input, true)['DeviceTicketInfo ']['UserId '];