PHP 5.3. 부터 POSIX Regex 함수( ereg_replace, ereg, eregi_replace, eregi, split, spliti, sql_regcase ) 들이 중요도가 떨어져서 더이상 사용하지 않게될 함수로 되었습니다.
(This function has been DEPRECATED as of PHP 5.3.0. Relying on this feature is highly discouraged.)
PHP 6.0.0 부터 완전히 제거됩니다.
http://php.net/manual/en/reference.pcre.pattern.posix.php
POSIX | PCRE |
---|---|
ereg_replace() | preg_replace() |
ereg() | preg_match() |
eregi_replace() | preg_replace() |
eregi() | preg_match() |
split() | preg_split() |
spliti() | preg_split() |
sql_regcase() | No equivalent |
ereg, eregi 함수는 정규식 패턴이 아닌 단순 문자열 포함여부 확인으로 사용할 경우 strpos, stripos로 변경
단 대소문자 구분없이 찾는 stripos 함수는 php5에서 부터 지원 4에서 사용하려면
if (eregi('where',$syntax)) $syntax .= ' '.$operator.' '.$query;
-> if (strpos(strtolower($syntax), 'where')!==false) $syntax .= ' '.$operator.' '.$query;
ereg -> preg_match (패턴을 / / 으로 감싼다)
ereg('\.([^\.]*$)', $this->file_src_name, $extension)
-> preg_match('/\.([^\.]*$)/', $this->file_src_name, $extension)
eregi -> preg_match (패턴을 / /i 으로 감싼다)
eregi('\.([^\.]*$)', $this->file_src_name, $extension)
-> preg_match('/\.([^\.]*$)/i', $this->file_src_name, $extension)
ereg_replace -> preg_replace
ereg_replace('[^A-Za-z0-9_]', '', $this->file_dst_name_body);
-> preg_replace('/[^A-Za-z0-9_]/', '', $this->file_dst_name_body);
eregi_replace -> preg_replace
ereg_replace('[^A-Za-z0-9_]', '', $this->file_dst_name_body);
-> preg_replace('/[^A-Za-z0-9_]/i', '', $this->file_dst_name_body);
출처 : http://koong.net/index.php?MenuID=4&cat=php&list_count=100&mode=view&idx=860
하지만 5.4 에서 없어지는게 또 있는대 preg_replace() 가 사라지게 된다는 겁니다.
PHP 5.4.x: "preg_replace() /e modifier is deprecated, use preg_replace_callback()"
preg_replace('/_(.?)/e',"strtoupper('$1')", $vars['settings']['type']);
이렇게 사용하던걸 아래와 같이
preg_replace_callback( // php5.x preg_replace_callback() method
'/_(.?)/',
function ($m) {
return strtoupper($m[1]);
},
$vars['settings']['type']),
변경해서 사용합니다.
http://kr1.php.net/manual/en/function.preg-replace-callback.php
'Story > php' 카테고리의 다른 글
php ini 변경없이 session 시간 늘리기 (0) | 2014.04.30 |
---|---|
SPAW Editor ie11 에서 동작하지 않는 문제점 (0) | 2014.02.03 |
cms 결제 (Cash Management Service) (0) | 2014.01.16 |
php setcookie 쿠키 모바일 mobile 에서 종료시간 (0) | 2014.01.15 |
php iframe check (0) | 2013.12.10 |