Home Backend Development PHP Tutorial Note 013 The difference between the function of is_callable() and method_exists() in PHP

Note 013 The difference between the function of is_callable() and method_exists() in PHP

Dec 26, 2016 am 10:03 AM
php

The role of is_callable()

Recently I came into contact with the is_callable() method. In the past, I used the method_exissts() method to perform related logical processing. It was not until I came into contact with the is_callable() method today that I discovered that the two are similar. Big similarities. The syntax structure of the

is_callable() method is:

bool is_callable ( callable $name [, bool $syntax_only = false [, string &$callable_name ]] )

Function It is to verify whether the content of the variable can be called as a function. Parameter 1 name is the name of the callback function that needs to be checked. If it is an object method, this requires an array as parameter 1. The parameter at this time should be the following structure:

array (class instance, method name)

Parameter 2 syntax_only is a Boolean value. If set to true, this function only verifies whether name is the syntax of a function or method, and does not actually detect whether the function exists.

Parameter 3 callable_name is used to receive the "callable name". Ordinary functions will return the function name, and methods in the class will return strings in the form: someClass::someMethod.

The difference between is_callable() and method_exists()

method_exists() The parameters of the function are an object (or class name) and a method name, if the given method exists in the object's class , then returns true.

The difference between the two is:

In php5, the existence of a method does not mean that it can be called. For methods of private, protected and public types, method_exits() will return true, but is_callable() will check for existence and whether it can be accessed. If it is of private, protected type, it will return false.

The above is the difference between the function of is_callable() and method_exists() in Note 013 in PHP. For more related content, please pay attention to the PHP Chinese website (www.php.cn)!


Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot Article Tags

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

PHP 8.4 Installation and Upgrade guide for Ubuntu and Debian PHP 8.4 Installation and Upgrade guide for Ubuntu and Debian Dec 24, 2024 pm 04:42 PM

PHP 8.4 Installation and Upgrade guide for Ubuntu and Debian

CakePHP Date and Time CakePHP Date and Time Sep 10, 2024 pm 05:27 PM

CakePHP Date and Time

CakePHP File upload CakePHP File upload Sep 10, 2024 pm 05:27 PM

CakePHP File upload

CakePHP Project Configuration CakePHP Project Configuration Sep 10, 2024 pm 05:25 PM

CakePHP Project Configuration

CakePHP Routing CakePHP Routing Sep 10, 2024 pm 05:25 PM

CakePHP Routing

Discuss CakePHP Discuss CakePHP Sep 10, 2024 pm 05:28 PM

Discuss CakePHP

CakePHP Quick Guide CakePHP Quick Guide Sep 10, 2024 pm 05:27 PM

CakePHP Quick Guide

How To Set Up Visual Studio Code (VS Code) for PHP Development How To Set Up Visual Studio Code (VS Code) for PHP Development Dec 20, 2024 am 11:31 AM

How To Set Up Visual Studio Code (VS Code) for PHP Development

See all articles