php - 如何整理多个 if 条件以提高可读性?

标签 php if-statement for-loop foreach

如何整理多个 if 条件以提高可读性?

例如,

if( $key != 'pg_id' && $key != 'pg_tag' && $key != 'pg_user'  )

当这种情况下的元素变长时,这让我感到困惑。

它在下面这种情况下使用 - foreach(),

$editable_fields = array(
    'pg_id',
    'pg_url',
    'pg_title',
    'pg_subtitle',
    'pg_description',
    'pg_introduction',
    'pg_content_1',
    'pg_content_2',
    'pg_content_3',
    'pg_content_4',
    'pg_backdate',
    'pg_highlight',
    'pg_hide',
    'pg_cat_id',
    'ps_cat_id',
    'parent_id',
    'tmp_id',
    'usr_id'
);

$sql_pattern = array();

foreach( $editable_fields as $key )
{
    if( $key != 'pg_id' && $key != 'pg_tag' && $key != 'pg_user'  ) $sql_pattern[] = "$key = ?";
}

我正在考虑使用 switch但我想我错了!

最佳答案

您可以使用in_array :

if (!in_array($key, array('pg_id', 'pg_tag', 'pg_user'))

关于php - 如何整理多个 if 条件以提高可读性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6915623/

相关文章:

使用 IF 进行 SQL 字符串比较

javascript - 当 ( for in ) 执行 javascript 时如何做某事?

matlab - 如何在 Matlab 中用窗口循环矩阵

for-loop - 进度条 DOS

php - 在 PHP 中编写长逻辑条件的更好方法

php - Composer 全局、系统范围、多用户安装

Python 列表字符替换和复制

php - 点击提交时需要输入一些关键词

php - 如何将字符串转换为数组?

Javascript,使用 if 语句更改单击元素的颜色