-
php - join() 함수개발 2009. 8. 20. 00:35
join() 함수는 implode() 함수의 별칭으로 배열의 원소를 특정문자와 함께 결합하여 문자열을 반환한다.
string implode ( string $glue , array $pieces )
예를 들어보자.
<?php
$array = array('lastname', 'email', 'phone');
$comma_separated = join(",", $array);
echo $comma_separated; // lastname,email,phone
?>
그런데 다음과 같이 배열을 선언하는 경우 오류메세지를 보인다.
<?php
$array[] = 'lastname';
$array[] = 'email';
$array[] = 'phone';
$comma_separated = join(",", $array);
echo $comma_separated; // 무엇이 나올까? 결과값은 정상적으로 잘 나온다. (lastname,email,phone)
?>
하지만 오류메세지도 같이 뿌려준다.
Warning: join() [function.join]: Invalid arguments passed in /home/segio/cell000/html/segio/works/namecard/group_send.php on line 111
배열값을 print_r() 함수로 살펴보면 위의 배열과 아래의 배열은 동일한 값을 나타낸다.
print_r($array)Array
(
[0] => 'lastname'
[1] => 'email'
[2] => 'phone'
)
정확한 원인은 모르겠으나 다음과 같이 형변환하여 사용할 수 있다.
<?php
$comma_separated = join(",", (array)$array);
?>
변수를 배열로 선언하면 오류가 나타나지 않는다.
<?php
$array = array();
$array[] = 'lastname';
$array[] = 'email';
$array[] = 'phone';
$comma_separated = join(",", $array);
?>
반응형'개발' 카테고리의 다른 글
쎄지오에서 MySQL 세팅하는 방법 (0) 2009.08.30 트리구조 만들기 (1) 2009.08.27 JPanel 에 그라디언트 주기 (0) 2009.08.19 동적인 자바스크립트를 만들자 (0) 2009.08.06 타자크래프트 - 스윙버전 (0) 2009.07.08