배열의 표현 방식???
본문
안녕하세요.
배열을 이용하여 함수를 만들고 있습니다.
1번과 같이 배열을 직접 작성하면 함수가 잘 작동합니다.
다만 DB에 미리 담겨져 있는 문자열을 불러와 사용코자 2번과 3번과 같이 작성하니 작동을 하지 않네요.
변수에 담겨있는 문자열을 사용해서 1번과 같은 결과를 내려면 어떻게 해야 할까요?
1)
$holidays = array('02-02','02-11','02-12','02-13','05-05','05-19','09-20','09-21','09-22','10-9','12-25');
2)
$temp=" '02-02','02-11','02-12','02-13','05-05','05-19','09-20','09-21','09-22','10-9','12-25' ";
$holidays = array($temp);
3)
$temp=" '02-02','02-11','02-12','02-13','05-05','05-19','09-20','09-21','09-22','10-9','12-25' ";
$holidays = explode(",", $temp);
답변 4
$temp = "'02-02','02-11','02-12','02-13','05-05','05-19','09-20','09-21','09-22','10-9','12-25'";
$holidays = str_getcsv($temp, ",", "'");
if (in_array($nextDay->format('m-d'), $holidays)) {
}
$holidays = ['02-02','02-11','02-12','02-13','05-05','05-19','09-20','09-21','09-22','10-9','12-25'];
3번처럼 하면 될 것 같네요.
<?php
$temp="'02-02','02-11','02-12','02-13','05-05','05-19','09-20','09-21','09-22','10-9','12-25'";
$holidays = explode(",", $temp);
foreach($holidays as $i) {
echo $i."<br>";
}
질문이 명확하지 않았던 모양이네요....
아래 1)번과 같이 작성하면 잘 작동합니다.
그런데 변수에 담아놓은 배열을 불러오려 2)번과 같이 작성하면 작동을 안하는데, 2)번을 어떻게 수정해주어야 할까요?
1)
$holidays = array('02-02','02-11','02-12','02-13','05-05','05-19','09-20','09-21','09-22','10-9','12-25');
if (in_array($nextDay->format('m-d'), $holidays)) {
.
.
.
}
2)
$temp="'02-02','02-11','02-12','02-13','05-05','05-19','09-20','09-21','09-22','10-9','12-25'";
$holidays = array($temp);
if (in_array($nextDay->format('m-d'), $holidays)) {
.
.
.
}