본문으로 바로가기

[PHP] explode함수 VS split함수

category Helloworld!/PHP 2013. 3. 19. 11:47

옛날 홈페이지 수정 

Deprecated: Function split() is deprecated in ...

이라는 에러를 발견했다.

PHP가 업데이트되면서 split()함수를 더이상 지원을 안해주나 부다.

ereg말고도 몇개가 더있을거라는 생각은 했지만...


여튼 뭘로 바꿔줘야하나 찾아보니깐 explode함수 쓰는 것을 권장하더라.

split 함수 -> explode함수로 수정할 것!


그리고 이건 참고 사항.

$test = "aa=bb";

$start = microtime(true);
for ($i=0; $i<1000000; $i++)
{
// $oops = split("=", $test);
 $oops = explode("=", $test);
 
}                                      
echo microtime(true)-$start ." sec \n";

처럼 split과 explode함수를 각각 100만번 루프를 돌리게 하고 결과 확인하면
explode 결과
# php aa.php
X-Powered-By: PHP/5.2.6
Content-type: text/html; charset=utf-8

1.3024411201477 sec


split의 결과는

# php aa.php
X-Powered-By: PHP/5.2.6
Content-type: text/html; charset=utf-8

1.7867012023926 sec

과 같다. 따라서 explode가 속도가 더 빠르므로
explode함수를 사용하는 걸 더 권장한다. (이래서 split 함수를 더이상 지원안하는거일지도...)


참고 사이트 : http://nmap.tistory.com/236