ReflectionMethod::setAccessible

(PHP 5 >= 5.3.2, PHP 7)

ReflectionMethod::setAccessibleSet method accessibility

Opis

public ReflectionMethod::setAccessible ( bool $accessible ) : void

Sets a method to be accessible. For example, it may allow protected and private methods to be invoked.

Parametry

accessible

TRUE to allow accessibility, or FALSE.

Zwracane wartości

Nie jest zwracana żadna wartość.

Zobacz też:

add a note add a note

User Contributed Notes 1 note

up
10
dave1010 at gmail dot com
9 years ago
This is handy for accessing private methods but remember that things are normally private for a reason! Unit Testing is one (debatable) use case for this.

Example:
<?php
class Foo {
  private function
myPrivateMethod() {
    return
7;
  }
}

$method = new ReflectionMethod('Foo', 'myPrivateMethod');
$method->setAccessible(true);

echo
$method->invoke(new Foo);
// echos "7"
?>

This works nicely with PHPUnit: http://php.net/manual/en/reflectionmethod.setaccessible.php
To Top