手动检查 php 中的 jpeg 文件结尾标记 ffd9 (?) 以捕获截断错误

2024-06-08

基本上是尝试从集合中删除损坏的、过早结束的 jpeg 文件。我认为如果文件末尾标记不存在,则意味着图像被截断,因此我认为它对我的目的无效。 这是检查声音的方法吗?如果是的话,我有什么想法可以在 php 中实现这个吗?

cheers


尝试这个:

$jpgdata = file_get_contents('image.jpg');

if (substr($jpgdata,-2)!="\xFF\xD9") {
  echo 'Bad file';
}

这会将整个 JPG 文件加载到内存中,并可能导致大文件出错。

选择:

$jpgdata = fopen('image.jpg', 'r'); // 'r' is for reading
fseek($jpgdata, -2, SEEK_END); // move to EOF -2
$eofdata = fread($jpgdata, 2);
fclose($jpgdata);

if ($eofdata!="\xFF\xD9") echo 'Bad file';
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

手动检查 php 中的 jpeg 文件结尾标记 ffd9 (?) 以捕获截断错误 的相关文章

  • 尝试加载 php_oci8.dll 时 PHP 启动时出现警告

    我正在使用 XAMPP 并尝试为 sql 配置 Oracle 连接 我取消了该行的注释extension php oci8 dll一开始出现错误 缺少oci dll 但后来我从Oracle网页下载了instantclient 我尝试过版本
  • 数组初始化中的正确缩进,PDT/Zend Studio

    我在代码中使用以下样式的数组初始化 a array one gt 123 two gt 456 但在这种情况下 PDT Zend Studio 无法正常工作 按 Return 键后 它将光标置于 a 下方 在我的示例中 并忽略缩进 如果数组
  • Codeigniter 错误:不允许您尝试上传的文件类型

    如果我上传一个csv文件 没有问题localhost一切工作正常 但是当我在实时服务器上上传我的应用程序并上传csv文件然后抛出此错误 The filetype you are attempting to upload is not all
  • 在cakephp中调用函数

    public function data if old status prev lat lat prev long long if status Village Unknown exec query else if status Town
  • 重定向至 2 页

    我有一个 PHP 页面 我想先将其重定向到一个页面 例如 google com 然后再重定向到另一个页面 例如 bing com 为此 我使用以下方法 header Location http google com header Locat
  • 发帖到 FB 粉丝专页时如何解决“不支持的发帖请求”?

    我有一个可以执行 ff 的脚本 发布指向用户时间线 墙的链接 以管理员身份发布指向用户页面的链接 发布到用户的个人资料页面工作正常 然而 发布到粉丝页面的行为很奇怪 我我能够发帖但我回来了 不支持的发布请求 错误 我已经搜索过这个问题并尝试
  • Laravel 搜索路由和控制器

    我正在构建我的第一个基本 Laravel Web 应用程序 在学习了一些教程之后 这是我自己修改的第一个应用程序 我在路由到控制器然后获取正确的网址时遇到了一些麻烦 理想情况下 此时我应该只有两条路线 and user 在主页上 您可以通过
  • 我想创建搜索页面,在“div”中显示从数据库中搜索到的数据?

    我想要创建搜索页面 php 在其中我想在 div 中显示从数据库搜索到的数据 我与数据库建立了连接 并在一个 phppage 中搜索数据 并在另一个 phppage 中创建了一个 div 标签 我怎样才能将一个php页面的搜索数据显示在另一
  • ModSecurity 提供通用 SQL 注入保护错误

    我的 Cpanel 服务器上出现此错误 并不是每次更新都会发生这种情况 只是某些 SQL 会发生这种情况 Sat Mar 11 03 48 18 409435 2017 error pid 31376 tid 140202228020992
  • 是 header('Content-Type:text/plain');有必要吗?

    我还没有看到有或没有这个头部信息有什么区别 定义 必要 如果您希望浏览器这样做 这是必要的know文件的类型是什么 PHP 自动设置Content Type标头至text html如果您不覆盖它 那么您的浏览器会将其视为不包含任何 HTML
  • Symfony2:在 SonataAdmin 中重写 createAction()

    最近几天我一直在疯狂地谷歌搜索 试图找出 但没有成功 如何覆盖 SonataAdmin 操作来捕获会话用户名并将其保存在外键字段中 附件AdminController类
  • 如何从 PHP 中的两个日期范围中提取每周一和每两周的周一?

    我正在使用臭名昭著的 jQuery UI 的日期选择器 并在我的表单中选择两个日期的范围 首先代表的是starting另一个代表日期end date 我现在需要的是算法 一些提示和方向或帮助者来计算这两个日期之间的每个星期一 例如 star
  • 致命错误:嵌套级别太深 - 递归依赖?

    我有一个复杂的嵌套对象层次结构 所有子对象 在父类中存储了一个对象数组 都包含链接回其父级的属性 相当简单明了 没有真正的问题 如果我对层次结构中的任何对象执行 var dump 我将在转储中获得递归引用 正如我所期望的那样 FIRSTGE
  • NoCaptcha 返回错误 invalid-json

    我将 Google 时髦的 ReCaptcha NoCaptcha 集成到一个简单的 html5 表单中 在本地主机上它可以工作 但是在线测试它总是返回错误 invalid json 这是我的代码的一部分 secret TEHSEHCRET
  • 通过 WooCommerce 注册时将完整的电子邮件地址设置为用户名

    设置 帐户下的 WooCommerce 有一个名为 根据客户电子邮件自动生成用户名 但它生成的用户名不是完整的电子邮件地址 email protected cdn cgi l email protection becomes myemail
  • CSRF 令牌无效。请尝试重新提交表格

    每次尝试提交表单时 我都会收到此错误消息 CSRF 令牌无效 请尝试重新提交表格 我的表单代码是这样的
  • 如何反转 Unicode 字符串

    它被暗示在一个评论这个问题的答案 https stackoverflow com questions 433525 choosing asp net over php or perl 433610PHP 无法反转 Unicode 字符串 至
  • 当用户使用 Internet Explorer 时重定向到新页面

    我使用下面的代码将使用 Internet Explorer 的用户重定向到新页面 但显然代码有问题 因为当我使用 Internet Explorer 时该网站不再加载 这是代码 由于我不知道我做错了什么 如果有人可以发布使用正确编码的正确方
  • 使用 PHP 解析 XML 导航站点地图

    我正在从 XML 文件实现 PHP 站点地图解析器 我做得相对不错 但是 我需要解析器更加动态 我需要实现一个递归函数 它将继续循环找到的每个 child node 一个节点可以在另一个 child node 中包含许多 child nod
  • 来自我的廉价中国 IP 网络摄像头的 JPEG 流是什么格式?

    我有一个便宜的中国 IP 网络摄像头 它有一个显示实时视频的网络界面 该视频似乎是输入浏览器的一系列 jpeg 图像 如果我将 wget 指向 URLhttp my ip camera video cgi http my ip camera

随机推荐