gpt4 book ai didi

php - 这是有效的 PHP 吗?复杂的 If 语句

转载 作者:行者123 更新时间:2023-12-03 18:36:51 24 4
gpt4 key购买 nike

我可以做类似的事情吗

if($x != (y&&z&&r&&w))

还是必须这样写

if($x!=y && $x!=z && $x!=r && x!=w)

只是想知道,因为我有很多变量要比较,只是想要一个更优雅的解决方案。

无论如何,您可能有更优雅的解决方案。这就是我想要做的。

foreach($_POST as $key => $value){
if($key != 'category_id'){
$cp[$key] = $value;
}
}

我还有大约 6 个变量要在我的 $_POST 语句中进行比较,我想让代码更漂亮。它基本上是一个巨大的表单,需要格式化为具有特定键的特定数组 ($cp[]) 才能使用我的 MySQL 插入语句。

有什么奇思妙想吗?

最佳答案

你的第一部分代码:

if($x != (y&&z&&r&&w))

将评估常量 yzrw (strings 'y''z''r''w',如果这些常量不存在的话) ;在每一个之间做一个 AND

然后,此 AND 的结果将与 $x 进行比较——这将被视为 bool 值。


所以,不,它并没有完全按照您的希望去做;你必须使用你的第二部分代码:

if($x!=y && $x!=z && $x!=r && x!=w)

请注意,在这里,它也会搜索名为 yzrw (或字符串,如果这些常量仍然不存在) -- 如果您希望它们被视为变量,您可能应该在它们前面放一些 $ .


如果您想测试一个变量是否具有多个值之一,一个可能的解决方案是将这些值放入一个数组中,然后使用 in_array()功能:

if (in_array($x, array(10, 20, 30) )) {
// $x is one of those values : 10, 20, 30
}

有些人认为这样比写几个比较更容易理解——我有时自己也用这个,有点喜欢它。

关于php - 这是有效的 PHP 吗?复杂的 If 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5559093/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com