php5.3에서는 ereg() 함수가 더 이상 사용되지 않는다는 메시지를 표시합니다. 오류 문제 해결책_php 팁
이 기사의 예에서는 php5.3에서 ereg() 함수가 더 이상 사용되지 않음 오류 문제를 해결하는 방법을 설명합니다. 참고할 수 있도록 모든 사람과 공유하세요. 구체적인 구현 방법은 다음과 같습니다.
1. 질문:
PHP 5.3 ereg()는 정상적으로 사용할 수 없습니다. "ereg() 함수가 더 이상 사용되지 않습니다."라는 메시지는 함수가 업그레이드되었으며 규칙을 적용하려면 //를 사용하여 preg_match해야 하기 때문입니다. , php5.3도 ereg를 사용합니다. 리듬이 포기되었습니다.
PHP 5.3 ereg()는 정상적으로 사용할 수 없으며 "ereg() 함수는 더 이상 사용되지 않습니다."라는 메시지가 표시됩니다.
문제의 근본 원인은 PHP에 두 가지 정규 표현식 방법이 있다는 것입니다. 하나는 posix이고 다른 하나는 perl입니다. PHP6은 posix 정규 표현식 방법을 폐지할 예정이므로 preg_match가 나중에 추가되었습니다. 이 문제에 대한 해결책은 매우 간단합니다. ereg 앞에 필터 프롬프트 정보 기호를 추가하면 됩니다. ereg()를 @ereg()로 변경하면 됩니다. 이는 프롬프트 정보를 차단하지만 여전히 근본적인 문제는 해결되지 않습니다. PHP 버전 5.2 이전에는 ereg를 정상적으로 사용했습니다. PHP 5.3 이후에는 ereg 대신 preg_match를 사용해야 합니다. 그래서 이렇게 되어야 합니다.
원본: ereg("^[0-9]*$",$page)는 다음과 같습니다: preg_match("/^[0-9]*$/",$page)
특별 알림: posix와 perl의 명백한 표현 차이점은 슬래시 추가 여부이므로 ereg와 비교할 때 후자는 정규 표현식 앞뒤에 두 개의 "/" 기호를 추가하는데 이는 필수입니다.
예:
변경 전:
$sql_str = strtolower($sql_str);
return eregi('fopen|post|eval|select|insert|and|or|update|delete|'|/*|*|../|./|union|into|load_file|outfile', $sql_str) / / 필터
}
2.
코드가 있는 파일 위치 찾기:
$sql_str = strtolower($sql_str);
return preg_match('/fopen|post|eval|select|insert|and|or|update|delete|'|/*|*|../|./|union|into|load_file|outfile/', $sql_str) ; // 필터
}
참고: 시작과 끝에 '/'를 추가하세요. 이 단락에 대한 참조: http://www.jb51.net/article/38857.htm
보충: 이 문제는 php5.2 이전 버전에서는 발생하지 않습니다.
이 기사가 모든 사람의 PHP 프로그래밍 설계에 도움이 되기를 바랍니다.

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











어떤 경우에는 부정적인 마진이 적용되지 않는 이유는 무엇입니까? 프로그래밍 중에 CSS의 부정적인 마진 (음수 ...

요소 수가 고정되지 않은 경우 CSS를 통해 지정된 클래스 이름의 첫 번째 자식 요소를 선택하는 방법. HTML 구조를 처리 할 때 종종 다른 요소를 만듭니다 ...

PS "로드"문제는 자원 액세스 또는 처리 문제로 인한 것입니다. 하드 디스크 판독 속도는 느리거나 나쁘다 : CrystalDiskinfo를 사용하여 하드 디스크 건강을 확인하고 문제가있는 하드 디스크를 교체하십시오. 불충분 한 메모리 : 고해상도 이미지 및 복잡한 레이어 처리에 대한 PS의 요구를 충족시키기 위해 메모리 업그레이드 메모리. 그래픽 카드 드라이버는 구식 또는 손상됩니다. 운전자를 업데이트하여 PS와 그래픽 카드 간의 통신을 최적화하십시오. 파일 경로는 너무 길거나 파일 이름에는 특수 문자가 있습니다. 짧은 경로를 사용하고 특수 문자를 피하십시오. PS 자체 문제 : PS 설치 프로그램을 다시 설치하거나 수리하십시오.

사용자 에이전트 스타일 시트로 인한 디스플레이 문제를 해결하는 방법은 무엇입니까? 에지 브라우저를 사용하는 경우 프로젝트의 DIV 요소를 표시 할 수 없습니다. 확인 후 게시했습니다 ...

부팅 할 때 "로드"에 PS가 붙어있는 여러 가지 이유로 인해 발생할 수 있습니다. 손상되거나 충돌하는 플러그인을 비활성화합니다. 손상된 구성 파일을 삭제하거나 바꾸십시오. 불충분 한 메모리를 피하기 위해 불필요한 프로그램을 닫거나 메모리를 업그레이드하십시오. 하드 드라이브 독서 속도를 높이기 위해 솔리드 스테이트 드라이브로 업그레이드하십시오. 손상된 시스템 파일 또는 설치 패키지 문제를 복구하기 위해 PS를 다시 설치합니다. 시작 오류 로그 분석의 시작 과정에서 오류 정보를 봅니다.

웹 페이지에서 로컬로 설치된 글꼴 파일을 사용하는 방법 웹 페이지 개발 에서이 상황이 발생 했습니까? 컴퓨터에 글꼴을 설치했습니다 ...

두 개의 인라인 블록 요소의 오정렬 한 이유에 대해 논의합니다. 프론트 엔드 개발에서 우리는 종종 인라인 블록을 사용할 때 요소 조판 문제를 종종 발생합니다 ...

UI 디자인 드래프트에서 프론트 엔드 구현까지 : 코드 작성을 시작하는 방법은 무엇입니까? UI 디자이너가 제공하는 Blue Lake Design Draft를 받으면 프론트 엔드 개발자는 ...
