【问题标题】:Exit inside function on PHP退出 PHP 内部函数
【发布时间】:2015-09-18 01:53:49
【问题描述】:

我可以在公共 api php 上使用此退出,或者它是一种不安全的方法吗? 我问这个是因为我想向 api 用户显示错误而不返回 mainFunction。

class Apiclass{
    private extraPrivateFunction($var){
        if($var == 1){ 
          exit(json_encode(array('status' => 'error','message' => 'error 1 is 1'))); 
        }
    }
    public mainFunction(){
        $number = 1;
        $this->extraPrivateFunction($number); 
    }
}

谢谢各位。

【问题讨论】:

  • 你可以吗?当你尝试它时发生了什么?
  • 是的,如果你不想返回 main,你完全可以。
  • 自定义错误/异常处理程序的完美场景,或者简单地创建一个打印错误的方法。
  • 检查异常——这是一种更优雅的方式来做同样的事情。
  • 很多人!我已经尝试过并且有效,我只需要确认它是否不是不安全的方法,因为第三用户将可以访问此“退出返回”。

标签: php function class exit


【解决方案1】:

是的,它有效,只需尝试以下代码:

class Apiclass{
    private function extraPrivateFunction($var){
        if($var == 1){ 
          exit(json_encode(array('status' => 'error','message' => 'error 1 is 1'))); 
        }
    }

    public function mainFunction(){
        $number = 1;
        $this->extraPrivateFunction($number); 

        echo "Never Gets Here";
    }
}

$a = new Apiclass();
$a->mainFunction();

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-10-12
    • 2018-10-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-19
    • 2011-08-10
    • 1970-01-01
    相关资源
    最近更新 更多