문제가 발생하면 해당 프로그램을 닫아야 합니다. PHP 프로그램을 디버깅할 때 발생하는 세 가지 문제입니다.

WBOY
풀어 주다: 2016-07-29 08:47:45
원래의
1129명이 탐색했습니다.

1. filesize() 함수가 잘못된 값을 반환합니다.
curl을 사용하여 페이지를 로컬로 다운로드하는 경우 다운로드한 임시 파일 tmpHtml.txt의 내용을 버퍼로 읽어야 합니다. fread()를 사용하여 읽으므로 읽을 크기를 전달해야 하므로 먼저 filesize('./tmpHtml.txt')를 사용하여 임시 파일 크기를 가져옵니다. 이상한 점은 얻은 임시 파일의 크기가 올바르지 않다는 것입니다. filesize()를 호출한 후 하드 디스크에서 파일을 수동으로 검색하기 위해 중단점을 설정했습니다. .
php.net에서 filesize를 검색하면 함수 설명에서 다음 문장을 볼 수 있습니다. 참고: 이 함수의 결과는 캐시됩니다. 자세한 내용은 Clearstatcache()를 참조하세요.
clearstatcache()를 다시 찾아보니 이유가 있었습니다.
PHP는 더 빠른 성능을 제공하기 위해 이러한(쿼리를 위해 함수 테이블이 제공됨) 함수의 반환 정보를 캐시합니다. 그러나 경우에 따라 캐시된 정보를 지우고 싶을 수도 있습니다. 예를 들어 스크립트에서 동일한 파일을 여러 번 확인했는데 스크립트 실행 중에 해당 파일이 삭제되거나 수정될 위험이 있는 경우 파일 상태 캐시를 지워야 합니다. 이 경우, cleanstatcache() 함수를 사용하여 PHP가 캐시한 파일 정보를 지울 수 있습니다.
2. UTF-8로 인코딩된 PHP 스크립트에서 GBK로 인코딩된 중국어 웹 콘텐츠의 패턴을 일치시킬 때 중국어를 일치시키는 방법.
어제 개발에서는 GBK로 인코딩된 문자열 'Apple'이 포함된 콘텐츠를 일치시켜야 했기 때문에 다음 코드를 작성했습니다.

코드 복사 코드는 다음과 같습니다.


$pat = '//'
$pat = iconv('UTF-8', 'GB2312'; , $pat) ;
$ret = preg_match_all($pat, $contents, $matches);


그런데 일치하는 내용이 없어서 UTF-8 인코딩으로 변환해 보았습니다. 먼저

코드 복사 코드는 다음과 같습니다.


$pat = '//';$contenst = iconv('GB2312', 'UTF-8', $contents)
$ret = preg_match_all($pat, $contents, $matches); 🎜>

그래서 일치합니다. 그러나 나는 그것을 알아낼 수 없으며 사기가 연루된 것으로 의심됩니다.

근데 비극은 오늘 또 첫 번째 방법을 사용해서 또 매칭이 됐다는 거예요. 문제는 다른 곳에 있는 것 같습니다.
아! 나는 돼지입니다. 문제 2는 문제 1로 인해 발생합니다! filesize()를 잘못 얻었으므로 당연히 일치시킬 수 없습니다! 두 번째 방법은 1번 문제를 해결한 후 매칭!
3. 브라우저에서 요소를 검사하여 얻은 인용 이미지의 다운로드 주소가 컬로 얻은 다운로드 주소와 다른 이유는 무엇입니까?
아마도... 최종 대답은 '나는 돼지입니다'일 것입니다.
URI 개체가 attachment.php? aid=Mzk3MTB8YTg5ZTYyNTJ8MTMyNjcyNDEwMXw5NWYydC9aOUE0a05EVm9ydlErSFBRamZJNWJQL1NHdWJLK3ZraU9GTDZYdnBUdw==¬humb=yes
지원이란 무엇인가요? 아마도 세션과 관련된 것일 수 있으며 변경되는 것이 정상입니다. 나중에는 정적 경로처럼 보이는 것을 캡처하는 데 문제가 없었습니다.
위 세 가지 이야기에는 두 가지 비극이 담겨 있습니다. 이는 PHP 초보자가 저지르기 쉬운 어리석은 실수입니다.
위 내용은 문제가 발생하면 종료해야 하는 내용을 포함하여 PHP 프로그램을 디버깅할 때 발생하는 세 가지 문제를 소개합니다. PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿