Heim  >  Artikel  >  Backend-Entwicklung  >  Das Yii-Framework verwendet eine magische Methode, um ein Beispiel für eine dateiübergreifende Aufruffunktion zu implementieren

Das Yii-Framework verwendet eine magische Methode, um ein Beispiel für eine dateiübergreifende Aufruffunktion zu implementieren

巴扎黑
巴扎黑Original
2017-08-13 14:33:521276Durchsuche

In diesem Artikel wird hauptsächlich die Verwendung magischer Methoden zum Implementieren dateiübergreifender Aufruffunktionen durch das Yii-Framework vorgestellt, einschließlich Betriebstechniken im Zusammenhang mit der objektorientierten PHP-Programmierung im Yii-Framework. Freunde in Not können sich darauf beziehen

In diesem Artikel werden die Beispiele von Yii beschrieben. Das Framework verwendet magische Methoden, um dateiübergreifende Aufrufe zu implementieren. Teilen Sie es als Referenz mit allen. Die Details lauten wie folgt:

Das aktuelle Projekt verwendet das Yii-Framework, der Controller ruft die Fassadenmethode auf, die Fassade ruft die Adaptermethode auf, der Adapter ruft die API-Methode auf API kapselt die SQL-Methode, aber in den meisten Fällen ist es nur ein einfacher Aufruf, der jedoch auf die Regeln des aktuellen Projekts beschränkt ist. Methoden müssen geschrieben werden, und die Methoden sind alle einfache Rückgaben, also habe ich eine Demo geschrieben und sie simuliert .


<?php
class aApi
{
  public static function tt1($name, $age)
  {
    print_r($name);
    echo $age;
  }
}
class aAdapter
{
  public function __call($func, $params)
  {
    $class = substr(get_called_class(), 0, -7) . &#39;Api&#39;;
    return call_user_func_array(array($class, $func), $params);
  }
}
class aFacade
{
  public static function __callstatic($func, $params)
  {
    // 这里也可以用debug_backtrace()
    $class = substr(get_called_class(), 0, -6) . &#39;Adapter&#39;;
    $obj = new $class();
    return call_user_func_array(array($obj, $func), $params);
  }
}
class aController
{
  public function actionC()
  {
    aFacade::tt1([&#39;name&#39;], &#39;age&#39;);
  }
}
$a = new aController;
$a->actionC();

Das obige ist der detaillierte Inhalt vonDas Yii-Framework verwendet eine magische Methode, um ein Beispiel für eine dateiübergreifende Aufruffunktion zu implementieren. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn