是獲取json對象和接收在PHP中使用file_get_contents()
。
如何連接php變量與json_decoded變量
$getAddEntryData = json_decode(file_get_contents("php://input"));
問題是我必須連接php變量與收到的對象。
如果這是一個PHP的REQUEST對象,我們正在這樣做。
$timingsStatus = $_REQUEST['timings_'.$dayArray[$i].'_status'];
但我怎麼能用json解碼對象。
我試過這樣的 - >。
$timingsStatus = $getAddEntryData->timings_.$dayArray[$i]._status;
它不工作,怎麼能這樣concat?
這是我的json數據結構。
let data = {
timings_enabled : this.form_data.map_timings,
timings_mon_status : this.form_data.map_timings_mon_status,
timings_mon_from : this.form_data.map_timings_mon_from,
timings_mon_to : this.form_data.map_timings_mon_to,
timings_tue_status : this.form_data.map_timings_tue_status,
timings_tue_from : this.form_data.map_timings_tue_from,
timings_tue_to : this.form_data.map_timings_tue_to,
timings_wed_status : this.form_data.map_timings_wed_status,
timings_wed_from : this.form_data.map_timings_wed_from,
timings_wed_to : this.form_data.map_timings_wed_to,
timings_thu_status : this.form_data.map_timings_thu_status,
timings_thu_from : this.form_data.map_timings_thu_from,
timings_thu_to : this.form_data.map_timings_thu_to,
timings_fri_status : this.form_data.map_timings_fri_status,
timings_fri_from : this.form_data.map_timings_fri_from,
timings_fri_to : this.form_data.map_timings_fri_to,
timings_sat_status : this.form_data.map_timings_sat_status,
timings_sat_from : this.form_data.map_timings_sat_from,
timings_sat_to : this.form_data.map_timings_sat_to,
timings_sun_status : this.form_data.map_timings_sun_status,
timings_sun_from : this.form_data.map_timings_sun_from,
timings_sun_to : this.form_data.map_timings_sun_to
}
PHP代碼正在嘗試做什麼。
$getAddEntryData = json_decode(file_get_contents("php://input"));
$dayArray = array('mon', 'tue', 'wed', 'thu', 'fri', 'sat', 'sun');
if (isset($getAddEntryData->timings_enabled)) {
for ($i = 0; $i < count($dayArray); $i++) {
//$timingsStatus = $_REQUEST['timings_'.$dayArray[$i].'_status'];
$timingsStatus = $getAddEntryData->timings_.$dayArray[$i]._status;
$source = str_replace('[[TIMINGS-STATUS]]', "Available", $source);
if ($timingsStatus == 'Open') {
// $timingsFromTime = $_REQUEST['timings_'.$dayArray[$i].'_from'];
$timingsStatus = $getAddEntryData->timings_.$dayArray[$i]._from;
// $timingsToTime = $_REQUEST['timings_'.$dayArray[$i].'_to'];
$timingsStatus = $getAddEntryData->timings_.$dayArray[$i]._to;
$source = str_replace('[[TIMINGS-'.strtoupper($dayArray[$i]).'-STATUS]]', $timingsStatus, $source);
$source = str_replace('[[TIMINGS-'.strtoupper($dayArray[$i]).'-FROM]]', $timingsFromTime, $source);
$source = str_replace('[[TIMINGS-'.strtoupper($dayArray[$i]).'-TO]]', $timingsToTime, $source);
} else {
$source = str_replace('[[TIMINGS-'.strtoupper($dayArray[$i]).'-STATUS]]', $timingsStatus, $source);
$source = str_replace('[[TIMINGS-'.strtoupper($dayArray[$i]).'-FROM]]', "", $source);
$source = str_replace('[[TIMINGS-'.strtoupper($dayArray[$i]).'-TO]]', "", $source);
}
}
}
你可以包括你解碼JSON – Beginner
@NewbeeDev的編輯問題 –
看來你的JSON是無效的結構...... – Naga