如何将“if条件”转换为“switch”方法

2024-03-11

我该怎么写这个if condition in switch method?

if( $k != 'pg_id' && $k != 'pg_tag' && $k != 'pg_user' )
{
     $result = $connection->run_query($sql,array(...));
}

to...?

switch($k)
{
case 'pg_id': false;
case 'pg_tag': false;
case 'pg_user': false;
default:
   $result = $connection->run_query($sql,array(...));

}

EDIT:

抱歉,我想我之前没有说清楚,下面是我想如何使用它,

$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 = ?";
}

正如你所看到的,我在那里重复了这个条件 -

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

并且在某个时候它可能会变长。


Use break为了防止继续下一个案例:

switch($k)
{
case 'pg_id':
case 'pg_tag':
case 'pg_user':
  // any match triggers this block; break causes no-op
  break;
default:
  $result = $connection->run_query($sql,array(...));
}

我不确定为什么你想为此使用 switch 语句。

如果为了可读性,你可以尝试这样做:

if($k != 'pg_id' &&
   $k != 'pg_tag' &&
   $k != 'pg_user')
{
  $result = $connection->run_query($sql,array(...));
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何将“if条件”转换为“switch”方法 的相关文章

  • 如何在 Carbon Laravel 中添加日期和另一个日期?

    在我的 laravel 项目中 我想将日期时间增加到前一个日期时间 这是我的代码 expire order 0 gt expire date new Carbon now gt addMonths 6 这两行的结果是 2018 01 28
  • 如何在数据列表 HTML PHP 中设置选择

    您好我想知道是否有一种方法可以在数据列表中设置选定的值 我想要这样的东西
  • 如何在 PHP 中从字符串类名实例化? [关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 如何创建返回方法名称的新实例 不幸的是我收到这个错误 错误 类名必须是有效的对象或字符串 这是我的代码 class Foo public f
  • 如何在 CakePHP 中“验证”人名?

    我有一个 PHP 脚本 应该检查 有效 的人名 但最近破解了带有空格的名称 因此我们向验证器添加了空格 除了这样做之外 有没有办法向 CakePHP 的验证器添加黑名单以阻止所有 无效 字符 而不是允许 有效 字符 注意 我 通常 知道如何
  • 解析错误:语法错误,意外的 T_RETURN [关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 遇到这个问
  • 无法在jspdf中加载多个图像

    我正在尝试加载动态生成的多个图像 我想将这些图像转换为 PDF 格式 HTML 代码如下
  • 在 Laravel 中的编辑表单上获取选定选项

    我的网站订单有一个可编辑的表单 并且有以下字段 User quantity note status 我在此表单中还有其他选项 但只有这些字段对我来说很重要 以便能够获取默认值 例如 我希望能够查看用户默认订购的数量 然后我可以更改它或保留它
  • php基于onclick函数输入日期类型

    用户选择日期 月份和年份 然后按一个按钮 根据他选择的日期向他显示数据库的值 不知道代码问题出在哪里
  • Laravel - 急切加载 Eloquent 模型的方法(而不是关系)

    就像我们可以急切加载 Eloquent 模型的关系一样 有没有办法急切加载不是 Eloquent 模型的关系方法的方法 例如 我有一个 Eloquent 模型GradeReport它有以下方法 public function totalSc
  • PHP - 警告:strpos() [function.strpos]: 空分隔符是什么意思?

    警告 strpos function strpos 空分隔符是什么意思 我有这个 if strpos 039 text false text str replace 039 text 猜测一下 我会说 text是一个空字符串 感谢马克指出细
  • Facebook iFrame 应用程序 - 摆脱垂直滚动条?

    我已经转换了一个 Facebook 应用程序 http apps facebook com video preferans 从 FBML 到 iFrame 使用 PHP SDK 现在显示的垂直滚动条与我之前显示的内容数量相同 一个徽标 一个
  • PHP 的脚手架 [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 PHP 中有什么东西可以像 Rails 一样创建基本的脚手架吗 编辑 我需要一些东西来快速原型化 一些框架比如Symfony http www sym
  • Laravel 从 API 响应中删除标头值

    Laravel 应用程序版本 5 6 我希望从 API 响应中显示的 Cache Control 标头中删除 private 值 我有一个中间件添加 无缓存 和 无存储 值 response next request response gt
  • 切换到 mysqli 是个好主意吗?

    我正在考虑为我的所有 php 项目切换到 mysqli 我的代码编写方式 我运行非常简单的网站并构建了自己的基本框架 我在所有网站上使用该框架 我在修改函数和类时不应该遇到太多问题 然而 我只听说过关于准备好的语句的积极的事情 除了一些关于
  • Laravel 登录后重定向回来

    登录后如何重定向返回页面 在 Laravel 5 2 中 认证控制器 protected redirectTo 重定向用户
  • 使(文本到图像)图像具有一定的宽度但无限的长度?

    我有下面的代码 可以用大量文本生成图像 我希望该图像的宽度为 700 像素 我还希望它保留字符串所具有的段落结构 该字符串来自 MySQL 数据库 我怎样才能实现这一点 font 2 width imagefontwidth font st
  • PHP 共享标头而不使用服务器端脚本?

    到目前为止我总是通过 PHP 解决简单的问题 您有一个包含页眉 菜单 页脚和内容字段的网站 每个页面的页眉 菜单和页脚通常是相同的 在没有 PHP 或任何其他服务器端语言的情况下 如何使页眉 菜单和页脚数据仅存在于一个文件中 例如 您不会有
  • 通过身份验证保护 CodeIgniter 2 应用程序的正确方法是什么?

    I have Ion Auth http benedmunds com ion auth 正确安装并在我的服务器上运行 我也有默认的代码点火器2 新闻 教程在同一个 CI 安装中工作 我只是在玩 并对使用身份验证系统 封闭 或保护整个应用程
  • Readfile 从大文件中读取 0 字节?

    我正在尝试通过以下方式发送一个大文件readfile 但是 没有任何内容发送到浏览器 并且readfile 回报0 not false 我尝试发送的文件大小为 4GiB 并且可由 PHP 读取 我正在设置set time limit 0 以
  • PHP条件,如果当前页面,则链接突出显示[关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 我有一个带

随机推荐

  • 子菜单未完全并排定位

    我发现了一个问题 sub menu code left and transform translateX 所以我将位置更改为相对位置并使用上面的两个代码重新定位 它似乎有效 但现在我拥有的两个子菜单不再并排 他们所做的只是相距几厘米顶部 不
  • 为什么我的 NSMutableDictionary 为零?

    我正在尝试将数组存储在 NSMutableDictionary 中 但是 在我为其设置对象后 NSMutableDictionary 为空 这是我的代码 感谢任何帮助 NSMutableArray arrTemp NSMutableArra
  • 验证电子邮件地址

    我正在尝试使用以下代码使用 C 发送电子邮件 MailMessage mail new MailMessage mail From new MailAddress fromAddress friendlyName mail To Add t
  • 抽象类的shared_ptr向量到副本向量

    我有一个带有共享指针的向量 std vector
  • 将 MVC 与 JavaFx 一起应用

    我是 GUI 世界 OO 设计模式的新手 我想在我的 GUI 应用程序中使用 MVC 模式 我已经阅读了一些关于 MVC 模式的教程 模型将包含数据 视图将包含视觉元素和控制器将连接视图和模型 我有一个包含 ListView 节点的视图 并
  • std::is_constructible 在具有非公共析构函数的类型上

    预期结果是什么std is constructible http en cppreference com w cpp types is constructible在具有私有或受保护析构函数的类型上 例如 我仍然可以在堆上构造这样的对象 即使
  • 将文件从一个目录复制到另一个目录

    我对 C 很陌生 我正在尝试让我的程序将文件从一个位置复制到另一个位置 我的方法如下 private void CopyInstallFiles object sender EventArgs e string sourceFile F i
  • HTML 表单验证 - 基于单选按钮选择的条件[重复]

    这个问题在这里已经有答案了 我有一个 HTML 表单 并且正在使用 JQuery Validate 插件来要求某些表单字段为必填字段 我有一个带有 3 个选项的单选按钮字段 小时 天 不确定 另一个字段用于输入与小时或天选择相对应的数字 但
  • 使用 TextInputLayout 和 Spinner 的对齐问题

    我遇到了 TextInputLayout 和 Spinner 的对齐问题 我希望 Spinner 下划线与 TextInputLayout 内的 EditText 下划线对齐 这就是我正在做的
  • iPhone Storyboard 编辑表格视图

    我一直在尝试学习 Xcode 中的新 Storyboard 功能 并且在尝试将 UITableView 设置为编辑模式时遇到了问题 到目前为止 我的故事板如下所示 NavigationController gt UIViewControll
  • Airflow:如何扩展SubDagOperator?

    当我尝试扩展气流 API 中提供的 SubDagOperator 时 气流网络服务器 GUI 无法将其识别为 SubDagOperator 从而使我无法放大 subdag 如何扩展 SubDagOperator 同时保留将其放大为 subd
  • Rake 任务无法正确加载:环境

    我正在运行自定义 rake 任务 namespace import do desc Import terms of service as HTML from stdin task terms gt environment do html S
  • .net 命名空间问题

    我在我的 asp net 应用程序中创建了一个名为 Controls 的文件夹 该文件夹中包含用户控件 例如 1 是 DateRangePicker ascx 现在我正在我的应用程序代码文件夹中创建一个类 并且尝试将某些内容转换为 Date
  • eval 反序列化后 JavaScript 原型未定义

    尝试反序列化 JSON 数据并更新每个对象的原型并继承公共函数 但是 以下脚本会引发错误 people 0 getFullName 不是函数 反序列化对象的原型在赋值后似乎未定义
  • 动态创建对象的副本?

    我的应用程序将我的 Web 服务响应存储到 WeakHashMap 中 在我的应用程序中 我在 UI 中操作从 Web 服务返回的数据 并且由于对象被引用 因此它也会修改引用 在我的弱哈希图中 有没有一种方法可以将对象的副本而不是引用存储到
  • 用于制作自定义支付网关的 Shopify 插件

    我想在shopify中制作自定义支付网关 以便哪种编程语言适合制作插件 并给出一些如何继续进行的提示 为了制作支付网关插件 我们必须使用公共应用程序还是私人应用程序 由于 Shopify 应用程序通过 REST 集成 因此您熟悉的任何应用程
  • jQuery Mobile 弹出窗口和对话框

    jQuery mobile 1 2 alpha 引入了 Popups 同时它已经有一个类似的小部件 称为 Dialogs 它们本质上看起来非常相似 弹出窗口和对话框之间有哪些技术差异 弹出窗口可以做哪些 Dialogue 做不到的事情 最好
  • 如何在bash中将多行文件转换为带有换行符的字符串?

    如何将多行文件转换为字符串 nbash 中的字符 例如 我有一个需要在我的配置中配置的证书JSON文件 所以而不是有 BEGIN CERTIFICATE MIIDBjCCMIIDB MIIDBjCCMIIDB MIIDBjCCMIIDB E
  • 使用 DateTimeConverter 设置 中的日期格式

    我有一个
  • 如何将“if条件”转换为“switch”方法

    我该怎么写这个if condition in switch method if k pg id k pg tag k pg user result connection gt run query sql array to switch k