ab
V2EX  ›  PHP

php 的 switch,case 值可以通配吗?

  •  
  •   ab · Jul 1, 2015 · 3722 views
    This topic created in 4057 days ago, the information mentioned may be changed or developed.
    switch ($_SERVER['REQUEST_URI']) {

    case '111':
    # code...
    break;

    case '222':
    # code...
    break;

    想判断二级二录,但是每个二级目录下可能有不一样的三级目录

    /111/1
    /111/2
    /111/3

    /222/1
    /222/2
    /222/3
    12 replies    2015-07-04 14:03:15 +08:00
    gdtv
        1
    gdtv  
       Jul 1, 2015
    你试试不就知道了?
    PS: 遇到这样的问题我一般懒得试,直接改用if()else()
    ab
        2
    ab  
    OP
       Jul 1, 2015
    @gdtv 值太多
    Paranoid
        3
    Paranoid  
       Jul 1, 2015
    switch case 相当低能,当然不行。
    realpg
        4
    realpg  
       Jul 1, 2015
    $tmpArr=explode($_SERVER['REQUEST_URI']);
    switch ($tmpArr[1])
    babyname
        5
    babyname  
       Jul 1, 2015
    不是switch行不行,而是你行不行
    moro
        6
    moro  
       Jul 1, 2015
    case 可以用条件语句
    switch(1){
    case explode('/', $_SERVER['REQUEST_URI'])[1] == '111':
    echo '111';
    break;
    }
    ryd994
        7
    ryd994  
       Jul 1, 2015 via Android
    switch用通配就失去switch的意义了吧……就变成一长串if else 的语法糖了
    quericy
        8
    quericy  
       Jul 1, 2015
    6L的方法让那个我想到这个。。。
    ab
        9
    ab  
    OP
       Jul 2, 2015 via iPhone
    谢谢
    Clarencep
        10
    Clarencep  
       Jul 2, 2015
    LZ不用框架的吗?REQUEST_URI的匹配一般框架都有Route之类的模块专门处理,只有你没想到的,没有做不了的
    ab
        11
    ab  
    OP
       Jul 2, 2015
    @Clarencep 不用啊,还在学习呢
    eoo
        12
    eoo  
       Jul 4, 2015 via Android
    header("Content-Type:text/html;charset=UTF-8");
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1011 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 51ms · UTC 23:15 · PVG 07:15 · LAX 16:15 · JFK 19:15
    ♥ Do have faith in what you're doing.