пытался найти лучший способ сделать что-то. У меня есть следующиеPHP, как получить данные из массива
$inputParams = array();
if (isset($_POST["inputOne"]) && !empty($_POST["inputOne"])) {
$inputOne = $_POST["inputOne"];
array_push($inputParams, $inputOne);
}
if (isset($_POST["inputTwo"]) && !empty($_POST["inputTwo"])) {
$inputTwo= $_POST["inputTwo"];
array_push($inputParams, $inputTwo);
}
if (isset($_POST["inputThree"]) && !empty($_POST["inputThree"])) {
$inputThree= $_POST["inputThree"];
array_push($inputParams, $inputThree);
}
Итак, поскольку не все входы необходимы, мой массив может иметь 1, 2 или 3 значения.
Затем я пришел к той части, которая обрабатывает массив, на данный момент у меня есть что-то вроде
$this->inputOne = $inputParams[0];
$this->inputTwo = $inputParams[1];
$this->inputThree = $inputParams[2];
Очевидно, что это не является хорошим способом сделать это, потому что если один из входов пуст (который они могут быть), то приведенное выше приведет к ошибке. Мне нужно присваивать значения переменной, если они существуют, так что каков был бы лучший способ сделать это? Я думал цикл Еогеасп, но тогда я не знаю, сколько контроля у меня есть над значением быть назначен (если только inputOne и inputThree есть данные, будут inputThree быть присвоено переменной 2?)
UPDATE
Если у меня есть
$this->inputOne = (!empty($inputParams[0])) ? $inputParams[0] : 'no data';
$this->inputTwo = (!empty($inputParams[1])) ? $inputParams[1] : 'no data';
$this->inputThree = (!empty($inputParams[2])) ? $inputParams[2] : 'no data';
var_dump("Input One is " . $this->email);
var_dump("Input Two is " .$this->mobNumber);
var_dump("Input Three is " .$this->storeCode);
и я заполнить поля inputOne и inputThree (не давая второй нет данных), то выход
string(37) "Input One is [email protected]"
string(19) "Input Two is ABC123"
string(22) "Input Three is no data"
Таким образом, данные из входных данных три были введены для ввода двух. Есть ли способ остановить это?
Зачем нужно назначать три разных свойства '$ this -> ..'? Почему бы просто не держать его в массиве? Для неизвестного количества значений это именно то, для чего нужны массивы. – deceze