создание и продвижение сайта (вбиваю в ТОП-10, как гвозди)Настройка и сопровождение платной рекламы яндекс.директ

PHP. Руководство по PHP. 2005

is_callable

Пред.

След.

is_callable

(PHP 4 >= 4.0.6, PHP 5)is_callable --

Verify that the contents of a variable can be called as a function

Description

bool is_callable (mixed var [, bool syntax_only [, string &callable_name]])

Verify that the contents of a variable can be called as a function.

This can check that a simple variable contains the name of a valid

function, or that an array contains a properly encoded object and

function name.

The var parameter can be either the name of a function stored in

a string variable, or an object and the name of a method within the

object, like this:

array($SomeObject, 'MethodName')

If the syntax_only argument is TRUE the

function only verifies that var might be a

function or method. It will only reject simple variables that are

not strings, or an array that does not have a valid structure to be

used as a callback. The valid ones are supposed to have only 2

entries, the first of which is an object or a string, and the

second a string.

The callable_name argument receives the

"callable name". In the example below it's

"someClass:someMethod". Note, however, that despite the

implication that someClass::SomeMethod() is a callable static

method, this is not the case.

<?php

// How to check a variable to see if it can be called

// as a function.

//

// Simple variable containing a function

//

function someFunction()

{

}

$functionVariable = 'someFunction';

var_dump(is_callable($functionVariable, false, $callable_name)); // bool(true)

echo $callable_name, "\n"; // someFunction

//

// Array containing a method

//

class someClass {

function someMethod()

{

}

}

$anObject = new someClass();

$methodVariable = array($anObject, 'someMethod');

var_dump(is_callable($methodVariable, true, $callable_name)); // bool(true)

echo $callable_name, "\n"; // someClass:someMethod

?>

Пред.

Начало

След.

is_bool

Уровень выше

is_double

Отвечу на любые вопросы. С уважением, Дмитрий Владимирович.

Ваше письмо×
Free Web Hosting