양식에서 항목 배열을 추가하고 모두 비어있는 경우 일부 유효성 검사를 수행하고 오류 문자열에 추가하고 싶습니다. 그래서 나는 가지고있다:
$array = array(
'RequestID' => $_POST["RequestID"],
'ClientName' => $_POST["ClientName"],
'Username' => $_POST["Username"],
'RequestAssignee' => $_POST["RequestAssignee"],
'Status' => $_POST["Status"],
'Priority' => $_POST["Priority"]
);
그런 다음 모든 배열 요소가 비어 있으면 다음을 수행하십시오.
$error_str .= '<li>Please enter a value into at least one of the fields regarding the request you are searching for.</li>';
답변
내장 된 array_filter를 사용할 수 있습니다.
콜백이 제공되지 않으면 FALSE (부울로 변환 참조)와 동일한 입력 항목이 모두 제거됩니다.
그래서 이것을 한 줄로 할 수 있습니다.
if(!array_filter($array)) {
echo '<li>Please enter a value into at least one of the fields regarding the request you are searching for.</li>';
}
답변
빈 접착제로 배열을 내파하고 결과 문자열의 크기를 확인합니다.
<?php if (strlen(implode($array)) == 0) echo 'all values of $array are empty'; ?>
답변
오래된 질문이지만 위에 나열되지 않았기 때문에 내 솔루션에 팝업 될 것이라고 생각했습니다.
function isArrayEmpty($array) {
foreach($array as $key => $val) {
if ($val !== '')
return false;
}
return true;
}
답변
정말 필요하지 않습니다.
이 필드를 개별적으로 검증하고이 프로세스를 완료하면 배열이 비어 있는지 (또는 동일한 값이 잘못된 값을 포함하는지) 알 수 있습니다.
답변
이 방법으로 사용을 단순화하십시오.
$array = []; //target array
$is_empty = true; //flag
foreach ($array as $key => $value) {
if ($value != '')
$is_empty = false;
}
if ($is_empty)
echo 'array is empty!';
else
echo 'array is not empty!';
답변
$ array의 정의가 잘못되었으며 작은 따옴표가 있습니다. 읽어야합니다.
$array = array( 'RequestID' => $_POST["RequestID"],
'ClientName' => $_POST["ClientName"],
'Username' => $_POST["Username"],
'RequestAssignee' => $_POST["RequestAssignee"],
'Status' => $_POST["Status"],
'Priority' => $_POST["Priority"] );
답변
나는 같은 질문이 있었지만 배열의 각 요소를 개별적으로 확인하여 어느 것이 비어 있는지 확인하고 싶었습니다. 빈 배열 요소를 확인하고 응답하기 위해 별도의 배열에 키 값과 실제 값을 만들어야하므로 예상보다 어려웠습니다.
print_r($requestDecoded);
$arrayValues = array_values($requestDecoded); //Create array of values
$arrayKeys = array_keys($requestDecoded); //Create array of keys to count
$count = count($arrayKeys);
for($i = 0; $i < $count; $i++){
if ( empty ($arrayValues[$i] ) ) { //Check which value is empty
echo $arrayKeys[$i]. " can't be empty.\r\n";
}
}
결과:
Array
(
[PONumber] => F12345
[CompanyName] => Test
[CompanyNum] => 222222
[ProductName] => Test
[Quantity] =>
[Manufacturer] => Test
)
수량은 비워 둘 수 없습니다.