[ Index ]

PHP Cross Reference of WordPress Trunk (Updated Daily)

Search

title

Body

[close]

/wp-includes/Requests/ -> Hooks.php (source)

   1  <?php
   2  /**
   3   * Handles adding and dispatching events
   4   *
   5   * @package Requests
   6   * @subpackage Utilities
   7   */
   8  
   9  /**
  10   * Handles adding and dispatching events
  11   *
  12   * @package Requests
  13   * @subpackage Utilities
  14   */
  15  class Requests_Hooks implements Requests_Hooker {
  16      /**
  17       * Registered callbacks for each hook
  18       *
  19       * @var array
  20       */
  21      protected $hooks = array();
  22  
  23      /**
  24       * Constructor
  25       */
  26  	public function __construct() {
  27          // pass
  28      }
  29  
  30      /**
  31       * Register a callback for a hook
  32       *
  33       * @param string $hook Hook name
  34       * @param callback $callback Function/method to call on event
  35       * @param int $priority Priority number. <0 is executed earlier, >0 is executed later
  36       */
  37  	public function register($hook, $callback, $priority = 0) {
  38          if (!isset($this->hooks[$hook])) {
  39              $this->hooks[$hook] = array();
  40          }
  41          if (!isset($this->hooks[$hook][$priority])) {
  42              $this->hooks[$hook][$priority] = array();
  43          }
  44  
  45          $this->hooks[$hook][$priority][] = $callback;
  46      }
  47  
  48      /**
  49       * Dispatch a message
  50       *
  51       * @param string $hook Hook name
  52       * @param array $parameters Parameters to pass to callbacks
  53       * @return boolean Successfulness
  54       */
  55  	public function dispatch($hook, $parameters = array()) {
  56          if (empty($this->hooks[$hook])) {
  57              return false;
  58          }
  59  
  60          foreach ($this->hooks[$hook] as $priority => $hooked) {
  61              foreach ($hooked as $callback) {
  62                  call_user_func_array($callback, $parameters);
  63              }
  64          }
  65  
  66          return true;
  67      }
  68  }


Generated : Thu Dec 15 08:20:01 2022 Cross-referenced by PHPXref