【发布时间】:2021-02-17 16:18:29
【问题描述】:
目前,我的这段代码运行良好。
if ($ext == 'jpg' or $ext == 'gif' or $ext == 'png' or $ext == 'jpeg' or $ext == 'eps' or $ext == 'pdf') {
// Extension found execute the rest.
} else {
// Extension not found show a warning or something.
}
但这就是我所说的硬编码,我希望最终用户能够在此代码所属的组件的设置中更改它。 在这些设置中,我可以很容易地创建一个输入,然后用户需要在一个逗号分隔的列表中填写他们想要的所有扩展名。
在这种情况下:jpg,gif,png,jpeg,eps,pdf
然后将检索这些设置,例如:$ext = $setting_extensions,其中显示字符串 jpg,gif,png,jpeg,eps,pdf
但是如何在这个 if 语句中使用它呢?
我想我可以使用explode和foreach:
$tests = explode(",", $ext);
foreach($tests as $test) {
}
但是如何在 if 语句中使用 or 获取它?
【问题讨论】:
-
explode和in_array。 -
这能回答你的问题吗? How to check if an array value exists?
-
@El_Vanja 在收到贡献者的答案并再次阅读您的建议后,我现在可以看到它如何回答我的问题(尽管必须先测试)但在此之前我看不到它是如何适用的.但是感谢您提出问题,因为我在发布之前没有搜索这些关键字。
标签: php