0

以下 try..catch 旨在运行一个方法(如果存在)并运行不同的方法(如果不存在)。

        $heading = new HeadingMan();
        try {
            if (!is_callable($heading->{$this->breadcrumbs->getCrumb(3)}())) {
                throw new Exception ('<b>Error - HeadingMan class can not handle: </b>' . $this->breadcrumbs->getCrumb(3));
            }
            $heading->{$this->breadcrumbs->getCrumb(3)};
        }
        catch (Exception $e) {
            $heading->latest();
        }

但是,catch 语句总是触发,并抛出一个新的异常(运行语句的 catch 部分)。

如何使用一系列函数调用检查类中是否存在方法

$this->breadcrumbs->getCrumb(3);

获取函数的名称。?

4

1 回答 1

0

$bool = method_exists($class,$method);

http://php.net/manual/en/function.method-exists.php

于 2013-01-16T04:08:02.813 回答