2015-10-06 17 views
0

我是一个新应用程序的原型设计行为,并且想要编写一些基于某些变量日期检查访问的函数。最好的模式来编写一个PHP函数,检查访问和返回更多然后布尔?

我只想写为单独的功能,如“canUserSeeThis()”和“canUserSeeThat()”

在情况下,这些返回一个假的,我想显示的消息,但我想该消息在这些函数中定义,但渲染参与函数的外部。

什么是最好的“模式”来快速构建这样的功能?我应该让消息的返回值?我应该处理抛出异常吗?

我只是原型设计,所以我不想最终定义完整的API系统。

+1

这可能是*程序员的一个问题*,并很可能已经有解答了:我同意@hoijui http://programmers.stackexchange.com – hoijui

+0

。你也可以考虑使用像Zend或Symfony这样的框架。 – user2182349

回答

0

我认为仅仅通过引用传递就是你需要:

<?php 
    function canUserSeeThis(&$whyCanNotMessage) 
    { 
    $whyCanNotMessage = 'Because you are not administrator'; 
    return false; 
    } 

    $meesage; 
    if (!canUserSeeThis($meesage)) 
    print($message); 
?> 

如果您需要收集一些信息,你可以通过引用传递一个数组,每个canUserSeeXXX()方法将一个字符串添加到阵列。稍后,您将所有数组项目打印到用户。

<?php 
    function canUserSeeThis(&$whyCanNotMessageList) 
    { 
    array_push($whyCanNotMessageList, 'Because you are not administrator'); 
    return false; 
    } 

    function canUserSeeThat(&$whyCanNotMessageList) 
    { 
    array_push($whyCanNotMessageList, 'Because you are not advanced user'); 
    return false; 
    } 

    $meesageList = array(); 
    $shouldShowMessage = !canUserSeeThis($meesageList)||!canUserSeeThat($meesageList); 

    if ($shouldShowMessage) 
    echo '<pre>'; print_r($meesageList); echo '</pre>'; 
?> 
相关问题