zoukankan      html  css  js  c++  java
  • 详解php中switch你可能不知道的事

    switch的常规用法是传递一个参数然后逐一跟case对比;

    switch (variable) {
        case 'value':
            // code...
            break;
        
        default:
            // code...
            break;
    }

    在分支比较多的时候;switch要比if else if好用;比如;

    if('value'){
        // code...
    }else if('value2'){
        // code...
    }else if('value3'){
        // code...
    }else if('value4' || 'value5'){
        // code...
    }

    用switch来写的话就是这样的,可以传递true;每个case就相当于一个else if;

    switch ('value') {
        case 'value1':
            // code...
            break;
        case 'value2':
            // code...
            break;
        case 'value3':
            // code...
            break;
        case 'value4':
        case 'value5':
            // code...
            break;
    }

    但是需要注意的是switch是松比较;也就是说如下这段代码每个case都能满足;

    switch (123) {
        case 'string':
            // code...
            break;
        case 'string2':
            // code...
            break;
        case 'string3':
            // code...
            break;
    }

    解决这个问题的办法就是在传参的时候转为字符串string型;

    switch (strval(123)) {
        case 'string':
            // code...
            break;
        case 'string2':
            // code...
            break;
        case 'string3':
            // code...
            break;
    }

    白俊遥博客

  • 相关阅读:
    #include <functional>
    3.3内联函数
    如何查看内存占用和运行速度
    属性和方法的动态绑定和限制
    __slots__节约空间
    函数进阶之一等对象
    python继承之super
    python的方法VSjava方法
    python面向对象基础(三)内置方法 __xx__
    python面向对象基础(二)反射
  • 原文地址:https://www.cnblogs.com/shuaibai123/p/5274196.html
Copyright © 2011-2022 走看看