This is an example PHP program that demonstrates how to call functions, instance methods, and class methods as callbacks in PHP.
<?php // Function callbacks function FunctionOne() { echo '<p>FunctionOne</p>'; } function FunctionTwo() { echo '<p>FunctionTwo</p>'; } // Class with method callbacks class CMethods { public $msaaCallbacks = ['MethodOne', 'MethodTwo']; public function __construct() {} public function MethodOne($sFromWhere) { echo '<p>MethodOne from '.$sFromWhere.'</p>'; } public function MethodTwo($sFromWhere) { echo '<p>MethodTwo from '.$sFromWhere.'</p>'; } public function CallMethods() { foreach($this->msaaCallbacks as $sMethod) { $this->$sMethod('$this'); } } static public $ssaaStaticCallbacks = ['StaticOne', 'StaticTwo']; static public function StaticOne($sFromWhere) { echo '<p>StaticOne from '.$sFromWhere.'</p>'; } static public function StaticTwo($sFromWhere) { echo '<p>StaticTwo from '.$sFromWhere.'</p>'; } static public function CallStaticMethods() { foreach(self::$ssaaStaticCallbacks as $sStaticMethod) { self::$sStaticMethod('self'); } } } // Ordinary functions as callbacks $saaCallbackFunctions = ['FunctionOne', 'FunctionTwo']; foreach($saaCallbackFunctions as $sFunction) { $sFunction(); } // Instance methods via this $qMethods = new CMethods(); $qMethods->CallMethods(); // Instance methods foreach foreach($qMethods->msaaCallbacks as $sMethod) { $qMethods->$sMethod('$qMethods'); } // Static methods via self CMethods::CallStaticMethods(); // Static methods via foreach foreach(CMethods::$ssaaStaticCallbacks as $sStaticMethod) { CMethods::$sStaticMethod('CMethods'); } ?>
© 20072024 XoaX.net LLC. All rights reserved.