【发布时间】:2017-10-15 18:59:48
【问题描述】:
我正在使用 PHP 和一个基于 JSON 的 API,它返回 2 个字段,其中包含属性照片的值:
- 照片网址
- has_large
photo_url 是常规大小的照片 URL。
示例: https://secure.example.org/Directory/AnotherDirectory/0008/102/12.jpg
如果 has_large = true,那么我们知道存在一张大照片,但 API 不会返回具体的 URL。
但是,从 API 文档中,我们知道,如果我们在图像文件名前加上一个“L”,这会为我们提供正确的大图像 URL:
示例: https://secure.example.org/Directory/AnotherDirectory/0008/102/L12.jpg
在将文件名写入数据库 (MySQL) 之前,如何以编程方式为文件名加上字母 L 前缀?
注意:所有照片的 URL 结构几乎相同。
每个属性的图片 URL 唯一变化的部分是:
- 指定属性 ID 的第 4 级目录(在上面的示例中 -- 102)
- 文件名本身,最多为 3 个数字(在上面的 URL 示例中 -- 12.jpg)。
在对 RegEx、preg_replace() 进行数小时研究并在 StackOverflow 上寻找类似解决方案后,我仍然不确定如何使用 PHP 正确完成此操作。
任何帮助将不胜感激。提前致谢。
【问题讨论】:
标签: php regex url-rewriting preg-replace filenames