개발2014. 3. 9. 21:16
300x250



PHP 에서 문자열을 특정 문자열로 분리하는 함수는 

explode() 과 split() 이 있다.

split 는 PHP 5.3 이후에서 preg_split 로 대체되었다.



-. 두 함수 모두 결과가 배열로 반환된다.


-. explode() 는 전체 문자열(string)에서 특정 문자열(separator)을 기준으로 잘라내는 반면, split()는 단순 문자열 뿐만 아니라 패턴(pattern)을 사용하여 문자열을 나눌 수 있으며, 반환되는 배열 원소의 수를 제한(limit)할 수도 있다.

-. 형식.

     array explode(string seprarator, string string) ;
     array split(string pattern, string string, int [limit]) ;


-----------------------------------------------------------------------------------------
explode() 함수. ]

[ ex. ]
<?
     $date = "2010/09/13" ;
    
     // "/" 를 기준으로 $date 값을 $year, $month, $day 로 나누어 배열로 반환한다.
     // explode() 함수는 구분자로 한가지만 사용할 수 있다.
     // list() 함수는 list 안의 변수 $year, $month, $day 를
     // 배열인 것처럼 다루는데 사용되는 함수다.
     list($year, $month, $day) = explode("/",$date) ;
     
     // 변수명 $year, $month, $day 와 한글을 붙여쓸 경우 실행 결과값을 볼수 없다.

     // "$year년 $month월 $day일" 는 잘못된 코딩이다.
     // php 는 한글도 변수명으로 사용할 수 있기 때문에 변수명뒤에 한글을 붙여쓰면 안된다.
     echo "$year 년 $month 월 $day 일" ;
?>

[ 출력. ]
2010 년 09 월 13 일 


-----------------------------------------------------------------------------------------
split() 함수. ]

[ ex. ]
<?
     $datetime = "2010/09/13 23:45:46" ;
   
     // split("[/ :]", $datetime) 함수에서 [/ :] 를 구분자로 나누어 배열 list 에 값을 대입한다.
     list($year, $month, $day, $hour, $minute, $second) = split("[/ :]", $datetime) ;
     echo "$year 년 $month 월 $day 일 $hour 시 $minute 분 $second 초" ;
?>

[ 출력. ]
2010 년 09 월 13 일 23 시 45 분 46 초 



* 출처

http://area51.lesha.co.kr/index.php/?m=bbs&bid=program&uid=565



[중요]

split 함수는 PHP 5.3 이후에서 더이상 사용되지 않는다. 

preg_split 함수로 대체되었다. 


300x250
Posted by 마스타