if문으로 비교할게 여러개일때 (feat array_filter)
안녕하세요 그냥.. 팁입니다.
일하다가 문득 귀차니즘으로 생각난.. 소소하지만 또 은근 자주 활용 할수 있는 그런 팁입니다.
문제 : $a, $b, $c, $d, $e, $f, $g 의 변수값이 있을때 $z 변수값을 'Y'로 만들고 싶다!
(활용예시 :
invoice 파일등록,
bl 서류 보내고,
고객사에 bl 보낸거 확인되고,
기타 서류 등록되어 있고,
예상 출고일은 등록되었나,
예상 도착일은 등록되었나.
위 조건이 만족할경우 "완료" 버튼을 보이게 하라
라는 미션이 있다고 하면
if ($a && $b && $c && $d && $e && $f && $g) {
echo '완료 버튼 생성';
}
뭐 이러면 됩니다 사실 ㅋㅋ
이게 더 직관적이긴 합니다.
가장 좋은 소스는? 어렵지않고 쉬우면서 동작잘되고 오류없는 소스!
근데 귀찮을때가 있더라구요. 그리고 변수명이 너무 길면 가독성도 좀 별로인거 같고..
그래서 array_filter쓰면 좀 심플한 느낌이 들더군요.
(array_reduce 활용도 같이하려다가 초보분들은 어려워하실수도 있어서 뺐습니다)
<?php
$a = '값1'; // 빈 값이 아님
$b = '값2'; // 빈 값이 아님
$c = '값3'; // 빈 값이 아님
$e = '값4'; // 빈 값이 아님
$f = '값5'; // 빈 값이 아님
$g = '값6'; // 빈 값이 아님
$arr = array($a, $b, $c, $d, $e, $f, $g); // 배열로 변수들을 묶기$filtered = array_filter($arr);
// 모든 변수가 빈 값이 아닐 경우
if (count($filtered) === count($arr)) {
$button = 'Y'; // 버튼을 Y로 변경
}
array_filter에 2번째 인수는 콜백함수 인데 없어도 되긴하지만 warrning 발생되는거 같아요
이번팁은 값이 있는지 없는지만 체크하려고 했기때문에 저렇게 했지만
콜백함수 만들면 좀더 디테일하게 체크할수 있을겁니다!!
댓글 1개
오..간단명료~
게시판 목록
개발자팁
질문은 QA에서 해주시기 바랍니다.
| 번호 | 분류 | 제목 | 글쓴이 | 날짜 | 조회 |
|---|---|---|---|---|---|
| 5396 | 기타 |
슈퍼스타맨
|
3개월 전 | 333 | |
| 5395 | PHP |
untitled
|
4개월 전 | 807 | |
| 5394 | MySQL |
선택과집중
|
5개월 전 | 579 | |
| 5393 | 웹서버 |
techstar
|
7개월 전 | 848 | |
| 5392 |
|
1년 전 | 1205 | ||
| 5391 | 9개월 전 | 1108 | |||
| 5390 | 9개월 전 | 892 | |||
| 5389 | 8개월 전 | 863 | |||
| 5388 | 8개월 전 | 963 | |||
| 5387 | 7개월 전 | 795 | |||
| 5386 | JavaScript |
nekoieye
|
7개월 전 | 957 | |
| 5385 | 웹서버 | 7개월 전 | 977 | ||
| 5384 | JavaScript |
|
8개월 전 | 800 | |
| 5383 | 기타 | 9개월 전 | 1115 | ||
| 5382 | 기타 |
|
9개월 전 | 566 | |
| 5381 | JavaScript | 9개월 전 | 895 | ||
| 5380 | 기타 |
|
9개월 전 | 676 | |
| 5379 | JavaScript | 9개월 전 | 678 | ||
| 5378 | 10개월 전 | 1187 | |||
| 5377 | 기타 |
|
10개월 전 | 750 | |
| 5376 | jQuery |
|
10개월 전 | 558 | |
| 5375 | jQuery |
techstar
|
10개월 전 | 717 | |
| 5374 | 기타 |
|
10개월 전 | 765 | |
| 5373 | MySQL |
|
11개월 전 | 798 | |
| 5372 | 기타 |
|
11개월 전 | 1000 | |
| 5371 | JavaScript |
|
11개월 전 | 711 | |
| 5370 | JavaScript |
|
11개월 전 | 717 | |
| 5369 | PHP |
|
11개월 전 | 1228 | |
| 5368 | PHP | 11개월 전 | 1396 | ||
| 5367 | 기타 |
nekoieye
|
1년 전 | 1270 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기