как найти пустые элементы массива в массиве, и если элементы пустые, как назначить предыдущее значение базы данных из базы данных

это мой код здесь я выбираю значение из базы данных я хочу, если получить пустое значение в запросе от внешнего интерфейса, то я назначил предыдущее значение базы данных этого столбца

$data=array(
'currentvoltage'=>$this->post('currentvoltage'),
'mainstatus'=>$this->post('main'),
'dgstatus'=>$this->post('dg'),
'acstatus'=>$this->post('acstatus'),
'firestatus'=>$this->post('fire'),
'smpsstatus'=>$this->post('smps'),
'simulatorid'=>$this->post('simulatorId')
);
//print_r($data);exit;
$checkdata=$this->basic->updatedata('tbl_simulatoralert',$data,$this->post('simulatorId'));
// print_r($checkdata);exit;
if(!empty($checkdata))
{

$response_data['responseCode']    = "200";
$response_data['responseMessage'] = "Data updated sucessfully";
$this->response($response_data);
}

0

Решение

Вместо:

$data=array(
'currentvoltage'=>$this->post('currentvoltage'),
'mainstatus'=>$this->post('main'),
'dgstatus'=>$this->post('dg'),
'acstatus'=>$this->post('acstatus'),
'firestatus'=>$this->post('fire'),
'smpsstatus'=>$this->post('smps'),
'simulatorid'=>$this->post('simulatorId')
);

Делать:

$data = array();

if(!empty($this->post('currentvoltage'))) $data['currentvoltage'] = $this->post('currentvoltage');

Если у вас есть только столбцы со значениями в массиве, будут обновлены только эти столбцы.

0

Другие решения

Если предположить, $data хранит входные данные, полученные из формы:

$data = array(
'currentvoltage'=>$this->post('currentvoltage'),
'mainstatus'=>$this->post('main'),
'dgstatus'=>$this->post('dg'),
'acstatus'=>$this->post('acstatus'),
'firestatus'=>$this->post('fire'),
'smpsstatus'=>$this->post('smps'),
'simulatorid'=>$this->post('simulatorId')
);

и разреши $db_data имеет данные для данного идентификатора, вы можете использовать троичный оператор для установки значений в $data,

Например,

$data = array(
'currentvoltage'=>($this->post('currentvoltage')) ?: $db_data['currentvoltage'],

//similarly others
);

Это простая проверка пустых / нулевых значений и подстановка входного значения или значения, хранящегося в базе данных.

0

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector