获取文本中第一张切合尺寸的图片地址

php中文网
发布: 2016-06-13 11:55:54
原创
967人浏览过

获取文本中第一张符合尺寸的图片地址
可以preg_match_all 获取所有图片地址, 循环判断直到找到合要求的图片解决!

但是我想在找到第一张图片时就立即判断,不符合就找第二张再判断,怎么解决比较有效率呢? 或者说全部匹配再循环根本就没问题?
------解决方案--------------------
参见 

<br />preg_match<br />
登录后复制

------解决方案--------------------
preg_match 不是可以用正则匹配吗? 可以写正则来匹配你想要的图片啊。
------解决方案--------------------
听上去很像提取文章缩略图,过滤小图标
preg_match_all函数貌似是直接返回所有匹配结果,如果文章太长或者图片过多确实影响性能
循环preg_match,每次都切掉已匹配的前部分文章呢?如何快速获得断点的位置?
用preg_replace_callback能做到吗?回调函数有办法结束主调函数吗?
换一种思路,你的文本是采集来的还是用户发布的?后者可以把图片存成附件形式入库方便管理,用了ueditor这类可以修改源码实现
------解决方案--------------------
preg_match_all 一次性取出
循环结果,必要时跳出(中断检查)

循环中 preg_match 或 strstr 逐次检查,直到符合条件

两者效率一样,且 preg_match 存在剩余串判断的问题

对于 php 5.2 可用纯字符串函数,逐字符识别。效率明显高于使用正则
对于 php 5.3 及以上,两者效率相当。不必讳疾忌医

建议对原串做 strip_tags 只保留 img 标记,处理起来要快好几倍

------解决方案--------------------
另外,若程序无后续动作(即允许在符合条件时 die)
那么 preg_replace_callback 最符合你的需求
------解决方案--------------------
版主提出的strip_tags提取img标签 一针见血啊
楼主说的单字段管理多个数据用逗号分隔,仅限用于极个别情况:不搜索,不排序,数量少等等,你可以学一下数据库范式这个东东,说白了就是多数据一定要单独建表方便管理
前阵子自己写的菜鸟CMS,图片单独建表,上传改为ajax,返回id和src。提交一些文章字段和这几个图片id后,在图片表中修改这些图片的其他字段,与当前文章绑定。管理起来非常方便。

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号