0

アクセス許可などを確認できるスクリプトを作成していて、奇妙なことに遭遇しました。

私の許可スクリプトは、システムと機能をチェックし、ユーザーが m を使用できるかどうかを確認できます。

いくつかのコードで説明します:

if(permission::check('factbounce', 'magklik')){
echo ' Yep good ';
} else {    
echo 'Nope not good';
}

ここでは、システム ファクトバウンスと関数 magklik をパーミッション クラス内に配置しています。

public static function check($systemCode, $functionCode = null ){
        $instance = self::get();

        if($instance->checkSystem($systemCode)){            
            if(is_null($functionCode))
                return true;

            if(!$instance->checkSystemFunction($functionCode))
                return false;

            return true;

        }   

        return false;
    }

このコードは をトリガーcheckSystemFunctionし、magklik をチェックします。

private function checkSystemFunction ( $functionCode ){

    if(!self::$oSystemFunction)
        self::$oSystemFunction = org_system_function::getByCode($functionCode);

    if(!is_object(self::$oSystemFunction));
        echo 'No Object';

    echo '<pre>'.print_r(self::$oSystemFunction, true).'</pre>';

    if(!self::$oSystemPermission->checkFunctionPermission(self::$oMedewerker, self::$oSystemFunction))
        return false;

    return true;        

}   

コードの出力は次のとおりです。

No Object
org_system_function Object
(
    [primaryKey] => org_system_function_id
    [table] => org_system_function
    [arAssoc] => Array
        (
            [function_id] => 1
            [name] => May click around
            [code] => magklik
            [description] => do what you want
        )

)
Yep good

オブジェクトがないと言われる理由がわかりません。印刷すると明らかにオブジェクトです。

4

2 に答える 2