立即注册  找回密码
 立即注册
CeraNetworksBGVM服务器主机交流会员请立即修改密码Sharktech防护
查看: 102|回复: 8

有懂php代码的吗

[复制链接]

有懂php代码的吗

[复制链接]

275

主题

349

回帖

1807

积分

金牌会员

积分
1807
wawos

275

主题

349

回帖

1807

积分

金牌会员

积分
1807
2024-12-24 11:04:16 | 显示全部楼层 |阅读模式
为啥php系统函数一个参数如果想判断多个常量, 可以加一个竖线 "|" 一次性写在一个参数里

比如判断ip是 ipv4 且 不是内网ip:
[ol]
  • filter_var($IP, FILTER_VALIDATE_IP, FILTER_FLAG_IPV4)
  • && filter_var($IP, FILTER_VALIDATE_IP, FILTER_FLAG_NO_PRIV_RANGE)[/ol]复制代码

    上面2句可以加一个竖线 "|" 直接写成一句, 不会有任何BUG:
    [ol]
  • filter_var($IP, FILTER_VALIDATE_IP, FILTER_FLAG_IPV4 | FILTER_FLAG_NO_PRIV_RANGE)[/ol]复制代码
  • 回复

    使用道具 举报

    275

    主题

    349

    回帖

    1807

    积分

    金牌会员

    积分
    1807
    wawos 楼主

    275

    主题

    349

    回帖

    1807

    积分

    金牌会员

    积分
    1807
    2024-12-24 11:07:15 | 显示全部楼层
    本帖最后由 wawos 于 2024-12-24 11:08 编辑

    但是自己测试, 自己定义一个函数 和 2个常量

    用这种加 "|" 同时传2个常量进去, 判断根本不行, 只能2句代码分别写单独判断才可以

    有那种加 "|" 同时传2个常量进去, 写法解释的官方教程吗
    回复

    使用道具 举报

    101

    主题

    980

    回帖

    3683

    积分

    论坛元老

    积分
    3683
    Kvm

    101

    主题

    980

    回帖

    3683

    积分

    论坛元老

    积分
    3683
    2024-12-24 11:09:05 | 显示全部楼层
    &是 and
    |是 or
    回复

    使用道具 举报

    16

    主题

    128

    回帖

    444

    积分

    中级会员

    积分
    444
    小瑞

    16

    主题

    128

    回帖

    444

    积分

    中级会员

    积分
    444
    2024-12-24 11:43:00 | 显示全部楼层
    看不懂 有请下一位男嘉宾登场
    回复

    使用道具 举报

    275

    主题

    349

    回帖

    1807

    积分

    金牌会员

    积分
    1807
    wawos 楼主

    275

    主题

    349

    回帖

    1807

    积分

    金牌会员

    积分
    1807
    2024-12-24 11:09:28 | 显示全部楼层
    本帖最后由 wawos 于 2024-12-24 11:14 编辑

    Kvm 发表于 2024-12-24 11:09

    &是 and
    |是 or


    别胡说好吗, 两个&&和||才是and和or, 单个一个&和|是 完全 完全不同的

    竖线运算优先级, 它是要先运算了, 才会把这个结果数字(1个数) 传给函数啊,

    函数怎么知道之前写的两个常量数是啥呢
    回复

    使用道具 举报

    14

    主题

    384

    回帖

    1242

    积分

    金牌会员

    积分
    1242
    a5582323

    14

    主题

    384

    回帖

    1242

    积分

    金牌会员

    积分
    1242
    2024-12-24 11:12:03 | 显示全部楼层

    a5582323 发表于 2024-12-24 11:15

    google:位运算符

    竖线运算付, 它是要先运算了, 才会把这个结果数字(1个数) 传给函数啊,

    函数怎么知道之前写的两个常量数是啥呢
    回复

    使用道具 举报

    275

    主题

    349

    回帖

    1807

    积分

    金牌会员

    积分
    1807
    wawos 楼主

    275

    主题

    349

    回帖

    1807

    积分

    金牌会员

    积分
    1807
    2024-12-24 11:09:00 | 显示全部楼层
    上面瞎扯呢  这里的|是位运算。。
    php || 才是 or   && 是 and

    回复

    使用道具 举报

    0

    主题

    77

    回帖

    246

    积分

    中级会员

    积分
    246
    入学申请

    0

    主题

    77

    回帖

    246

    积分

    中级会员

    积分
    246
    2024-12-24 11:15:16 | 显示全部楼层
    这个是对的,可以这样写
    回复

    使用道具 举报

    13

    主题

    228

    回帖

    733

    积分

    高级会员

    积分
    733
    ymh1147

    13

    主题

    228

    回帖

    733

    积分

    高级会员

    积分
    733
    2024-12-24 11:15:48 | 显示全部楼层
    问得很好,下次别问了。找gpt
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    Archiver|小黑屋|HS2V主机综合交流论坛

    GMT+8, 2025-5-16 16:23 , Processed in 0.021726 second(s), 2 queries , Gzip On, Redis On.

    Powered by Discuz! X3.5

    © 2001-2024 Discuz! Team.

    快速回复 返回顶部 返回列表