php 处理html时,字符串截断
stream=fopen("xxx.html");var str = '';while(!feof(stream){ size+=1024; str.=fread(stream,size);}....
str只能获取1024个字节,后面的都比截断了,但是fread确实读取到了,是不是用.=出了问题,还是html里面有特殊字符导致截断?
谢谢大神
回复讨论(解决方案)
$stream=fopen("test.txt","a+");$str = '';$size=1024;while(!feof($stream)){ $str.=fread($stream,$size);}fclose($stream);echo $str;
$stream=fopen("test.txt","a+");$str = '';$size=1024;while(!feof($stream)){ $str.=fread($stream,$size);}fclose($stream);echo $str;
我读取的是html,跟读取模式应该没关系,有的页面可以抓取,有的页面抓取被截断,怀疑某个html标签的问题?谢谢
就你上面的代码而言,都不能运行,可能是你写错吧
至于你说的html的某个特殊字符,应该是不存在的
而且你只是读取一个html,数据不大,建议用file_get_contents(),性能比fread好
你那又不是 php 代码
就你上面的代码而言,都不能运行,可能是你写错吧
至于你说的html的某个特殊字符,应该是不存在的
而且你只是读取一个html,数据不大,建议用file_get_contents(),性能比fread好
恩,我乱写的,大概意思,刚开始改cms,php入门级。
您写的很对,但是我确实遇到问题了,调试的时候,每次while里面的fread都能读到数据,但是,加到字符串str里面后,str的长度变了,但是内容每增加,难道是调试的问题,调试的时候只能只能显示变量一部分?我改过xdebug的显示最大长度,没有效果,我用的vs.php调试的,怎么搞能显示全部。怎么搞能看到到底str存了多少,只见其长度增加,没见到内容变化
你用
$stream=fopen("test.html","r");$str = '';$size=1024;while(!feof($stream)){ $tmp=fread($stream,$size); file_put_contents('d:/log.log',$tmp.PHP_EOL,FILE_APPEND); $str.=$tmp; $tmp='';}fclose($stream);echo $str;
运行程序,再打开log.log查看,每一行是每次while循环读取的数据
您那是什么代码?C么?
你用
$stream=fopen("test.html","r");$str = '';$size=1024;while(!feof($stream)){ $tmp=fread($stream,$size); file_put_contents('d:/log.log',$tmp.PHP_EOL,FILE_APPEND); $str.=$tmp; $tmp='';}fclose($stream);echo $str;
运行程序,再打开log.log查看,每一行是每次while循环读取的数据
好的,我试试,好人啊,

핫 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)

뜨거운 주제











이번 장에서는 CakePHP의 환경 변수, 일반 구성, 데이터베이스 구성, 이메일 구성에 대해 알아봅니다.

PHP 8.4는 상당한 양의 기능 중단 및 제거를 통해 몇 가지 새로운 기능, 보안 개선 및 성능 개선을 제공합니다. 이 가이드에서는 Ubuntu, Debian 또는 해당 파생 제품에서 PHP 8.4를 설치하거나 PHP 8.4로 업그레이드하는 방법을 설명합니다.

CakePHP는 PHP용 오픈 소스 프레임워크입니다. 이는 애플리케이션을 훨씬 쉽게 개발, 배포 및 유지 관리할 수 있도록 하기 위한 것입니다. CakePHP는 강력하고 이해하기 쉬운 MVC와 유사한 아키텍처를 기반으로 합니다. 모델, 뷰 및 컨트롤러 gu

HTML 테이블 레이아웃 안내. 여기에서는 HTML 테이블 레이아웃의 값에 대해 예제 및 출력 n 세부 사항과 함께 논의합니다.

VS Code라고도 알려진 Visual Studio Code는 모든 주요 운영 체제에서 사용할 수 있는 무료 소스 코드 편집기 또는 통합 개발 환경(IDE)입니다. 다양한 프로그래밍 언어에 대한 대규모 확장 모음을 통해 VS Code는
