php 使用call_user_func_array

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php 使用call_user_func_array相关的知识,希望对你有一定的参考价值。



<?php
	public function __construct($urlvalues){

		$this->urlvalues = $urlvalues;
		$this->controller = $this->urlvalues['controller'] ;
		$paramsarray[] =  $this->urlvalues['id'];
		$this->url_params = array_values( $paramsarray );
	....	
	}
	
	
	
	
	
	
public function createController() {

      $mycontroller = $this->urlvalues['controller'] ;
      $mycontroller = $this->convertToStudlyCaps($mycontroller); 
      $mycontroller = $this->getNamespace() . $mycontroller;

			$controller = $this->namespace . $this->controller;
			// $mycontroller = ucfirst($this->controller) ;
			 echo "NAMESPACE: $this->namespace<br>";
			 echo "CONTROLLER: $this->controller<br>" ;
   			 echo "PATH: " . $controller . "<br>";
		     echo "MY CONTROLLER: " . $mycontroller . "<br>";
	
		if ( !$this->urlvalues['controller'] )  {
			$homeNS = 'App\Controllers\Home';
		 	$home = new $homeNS ;
			$home->index() ;
			echo "HOME" ;
		}

		elseif(class_exists( $controller  )  ) {
			$objcontroller = new $mycontroller();  // NEW CONTROLLER
			// return the parent classes of the controller
			$parents = class_parents($controller);

			// Check if this class extends the Base Controller
			if(in_array("Core\Controller", $parents) ) {
				if(method_exists($controller, $this->action)) {

					 if ( !empty($this->url_params && $this->url_params != "") ) {
						 
			 			call_user_func_array( array( $objcontroller, $this->action),$this->url_params ) ;
	
					 }

					else {
						$objcontroller->{$this->urlvalues['action'] }() ;
					}
				} 
				else {
					echo "<h1>Method $this->action does not exist</h1>";
					return;
				}
			} // END in_array
			else {
				echo '<h1>Router controller not found</h1>';
				return;
			}
		} // END class_exists	
	
	....
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	

以上是关于php 使用call_user_func_array的主要内容,如果未能解决你的问题,请参考以下文章

使用 zend 读取 php.ini 进行 PHP 扩展(不是 PHP 语言)

php PHP - 使用AJAX调用php类函数

如何使用包含的 php 文件中的 php 变量

mac使用php-version切换PHP版本

如何使用php将php代码写入文件

PHP php-log - 使用PHP处理日志文件