트위터 @sitehis Sitehis.com (SiteN.kr + SiteH.kr) 시작페이지로 | 검색공급자추가 | 즐겨찾기추가 | Bookmark and Share
  Sitehis  
사이트보도자료사이트히스토리사이트커뮤니티도메인/호스팅홈페이지제작웹유지보수홈페이지몰솔루션몰디자인몰이벤트제휴몰마이페이지
  스타이동?
아이디
비밀번호
Twitter로그인 | @sitehis
회원가입 | 아이디/비밀번호 찾기
  유머즐거운이야기  
   
  . 인터넷 새소식  
  . 웹개발분야 새소식  
  웹디자인 새소식  
  PHP프로그램 새소식  
  웹서버 새소식  
  HTML/CSS 팁공유  
  Javascript 팁공유  
  PHP 팁공유  
  플래쉬 팁공유  
  제로보드XE 팁공유  
  위젯 팁공유  
  오픈API 팁공유  
  스마트폰어플 팁공유  
  웹서버보안 팁공유  
  유용한 자료실  
  유료솔루션정보  
  유료호스팅정보  
  유료서버임대정보  
  무료호스팅정보  
  Sitehis에 공개제안  
   
상담신청하기
진행중인 이벤트가 없습니다.
 사이트커뮤니티 >
제목

php ereg/eregi/reg_replace/.. deprecated 문제 preg(자료 수집중, 수정 10/12/19) http://sitehis.com/db_talk_167

작성자 박선민 작성일 2012-06-12 조회 8538

개인적으로 perl-레귤라보다 posix-레귤라 함수를 매우 좋아하는 터라,
충격이 큰데요.
추가 자세한 정보가 있으신 분들은 댓글이나 트위터 @sitehis 로 자료 주시면 감사하겠습니다.

PHP 언어에서 POSIX 레귤러함수를
5.3 버전에 deprecated(사용하지말것을경고)하고.
6.0 버전에서는 아예 삭제하겠다는 공지가 올라왔습니다.

처음 듣고 말도 안된다고 하였지만,
소문이아니고 perl 레귤러 함수로 고쳐 써야 하는 것으로 최종 확인하였습니다.

 

  • ereg -> preg_match
  • eregi -> preg_match ( i modifier )
  • ereg_replace -> preg_replace
  • ereg_replace -> preg_replace ( i modifier)
  • split -> preg_split 
  • spliti -> preg_split ( i modifier )
  • sql_regcase() -> 없음 알아서..
     
자세한 안내는 다음에서 확인하실 수 있습니다. 하나씩 정검하여 봅시다.

급하니깐 E_DEPRECATED 에러메세지를 우선 안 나오게 할려면,
  • error_reporting = E_ALL & ~E_DEPRECATED & ~E_NOTICE
  • 혹은 error_reporting(E_ALL ^E_DEPRECATED);
  • 혹은 @ini_set('display_errors', 0);
고쳐버리겠다고요?? 그러면 다음 자동으로 고쳐주는 프로그램을 이용해보세요
ereg()
  • ereg('\.([^\.]*$)', $this->file_src_name, $extension);
  • preg_match('/\.([^\.]*$)/', $this->file_src_name, $extension);
  • 레귤러 표현식에 / ... / 로 감싸는 것으로 우선 해결

eregi()

  • eregi('\.([^\.]*$)', $this->file_src_name, $extension);
  • preg_match('/\.([^\.]*$)/i', $this->file_src_name, $extension);
  • 레귤러 표현식에 / ... /i  로 감싸는 것으로 우선 해결

ereg_replace()

  • ereg_replace('[^A-Za-z0-9_]', '', $str);
  • preg_replace('/[^A-Za-z0-9_]/', '', $str);
  • 복잡한 것은 이렇게~
  • $str_new = preg_replace('/' . preg_quote($word) . '/', '', $str_old);
  • 간단하게 이런 방법도 ( / 대신에 별로 사용않하는 # 혹은 `(틸드)를 사용해서 )
  • $str_new = preg_replace("#$word#', '', $str_old);
  • $str_new = preg_replace("`$word`", '', $str_old);

eregi_replace()

  • ereg_replace('[^A-Za-z0-9_]', '', $str);
  • preg_replace('/[^A-Za-z0-9_]/i', '', $str);
  • 복잡한 것은 이렇게~
  • $str_new = preg_replace('/' . preg_quote($word) . '/i', '', $str_old);


관련 게시물(http://www.sitehis.com)



회원가입없이 트윗터 아이디로 로그인하여 댓글을 작성할 수 있습니다~!!



좋은글은 아낌없이 스크랩을^^ 유명해지게^^ 행복해지게^^
   
Facebook페이스북스크랩   구글북마크  


- RSS 구독하기
     
믹시

- 퍼가실 경우에는 각 게시물 출처를 확인하시고 출처를 남겨주세요
- 게시물들은 신문기사와 달리 사실보다 의견 중심일 것입니다.
- 사실이 아니거나 본인 의견과 다르면 댓글로 수정하여 주세요.

이전글 한국 전화 지역번호 식별번호 정리
다음글 url 간단하게 만들기
      
 

sitehis.com intro
sitehis.com price
sitehis.com copyright