目标是检查字符串是否为 URL,不需要正则表达式。
我有一个表单,可让用户上传图像或从 URL 添加图像。
我得到:
van_gogh_shoes.jpg
或者
http://t2.gstatic.com/images?q=tbn:ANd9GcR2YNtlcmDDBpseEqUkMhe7-netq7RL2u_bw3_34VwB-Tsv2V-B
用户只能添加 1 张图片,上传或 URL。因此,在 mysql 中,我正在更新以entry_image
上述值之一命名的同一列。
entry_image
显示图像时,如果列中的值是 URL ,我需要以最简单的方式检查。如果是这样,请显示完整的 URL,否则我自己的上传图像的路径。
<img src="<?php (filter_var($row->entry_image, FILTER_VALIDATE_URL)) ? $row->entry_image : "uploads/entries/{$row->user_id}/{$row->entry_image} ?>">
我正在使用FILTER_VALIDATE_URL
似乎可行的方法,但与大多数我没有使用过的东西一样,我不确定它是否是最好的解决方案。你有什么想法?
我试图在显示图像时避免正则表达式或其他繁重的验证代码,因为我已经在向 mysql 输入数据时验证了这些值。如果存在,请分享一个更简单的解决方案。