[访问 方法和类时使用php流控制

问题描述 投票:0回答:2

我目前正在使用一个类来控制对网站中某些文件的访问。这堂课很好。但是,最近我得知,我需要为该站点的一个特定部分创建一个更细粒度的系统。我的第一个倾向是使用嵌套的if-else-if来设置几个变量。

$admin = new Admin();

if( $admin->user_access('can_view_g2')) {
    $groupNum = $group2;
    $adminGroup = true;
    } else {

if( $admin->user_access('can_view_g3')) {
    $groupNum = $group3;
    $adminGroup = false;
    } else {

if( $admin->user_access('can_view_g4')) {
    $groupNum = $group4;
    $adminGroup = true;
    } else {

. . . 

现在,我想消除几行代码,并创建更简洁的流控制语句。我想使用switch语句来处理此问题,但是由于我正在访问类的方法和属性,因此我不确定是否可以。

switch ($admin->user_access($permission)) {

    case 'can_view_g2':
        $groupNum = $group2;
        $adminGroup = true;

    break;

    case 'can_view_g3':
        $groupNum = $group3;
        $adminGroup = true;;

    break;

    case 'can_view_g4':
        $groupNum = $group4;
        $adminGroup = true;

    . . .

我上面的内容不起作用。有谁知道这样做的方法或至少使用一种更有效的流量控制方法?

我目前正在使用一个类来控制对网站中某些文件的访问。这堂课很好。但是,最近我被告知,我需要为一个...

php class methods control-flow
2个回答
0
投票

如果您只是试图将if / else的内容转换为一个switch / case:


1
投票

尝试一下:

© www.soinside.com 2019 - 2024. All rights reserved.