Heim  >  Artikel  >  Backend-Entwicklung  >  Ausführliche Erläuterung des Beispiels für die Implementierung einer benutzerdefinierten ThinkPHP-Klasse method_php

Ausführliche Erläuterung des Beispiels für die Implementierung einer benutzerdefinierten ThinkPHP-Klasse method_php

WBOY
WBOYOriginal
2016-12-05 13:28:251150Durchsuche

Das Beispiel in diesem Artikel beschreibt die Implementierungsmethode für benutzerdefinierte thinkPHP-Klassen. Teilen Sie es als Referenz mit allen. Die Details lauten wie folgt:

1. Rufen Sie das Model an

<&#63;php
/**
 * 积分模型 api接口
 */
class ApiModel{
  private $url = 'http://js.yunlutong.com/Customer/Interface';
  public function test() {
    $post_data['action']    = 'sadf';
    $post_data['callback']   = '&#63;';
    $res = request_post($this->url, $post_data);
    $firstChar = substr($res,0,1);
    if ($firstChar =='&#63;') {
      $res = substr($res,2);
      $res = substr($res,0,strlen($res)-1);
    } elseif($firstChar == '(') {
      $res = substr($res,1);
      $res = substr($res,0,strlen($res)-1);
    }
    dump(json_decode($res,true));
  }
}

Modell nicht erben, andernfalls wird ein Fehler gemeldet, da die Tabelle nicht vorhanden ist.

Anruf,

$Api = D('Api');
$Api->test();

Der Anruf ist zwar bequem, fühlt sich aber immer etwas unvernünftig an. Schließlich betreibt dieser D die Datenbank.

2. Implementieren Sie es, indem Sie Klassen einführen und die Klassen unter ORG stellen

<&#63;php
class Integral{
  private $url = 'http://js.yunlutong.com/Customer/Interface';
  public function test() {
    $post_data['action']    = 'sadf';
    $post_data['callback']   = '&#63;';
    $res = request_post($this->url, $post_data);
    $firstChar = substr($res,0,1);
    if ($firstChar =='&#63;') {
      $res = substr($res,2);
      $res = substr($res,0,strlen($res)-1);
    } elseif($firstChar == '(') {
      $res = substr($res,1);
      $res = substr($res,0,strlen($res)-1);
    }
    dump($res);
    dump(json_decode($res,true));
  }
}
&#63;>

Anrufen

import("@.ORG.Api.Integral");
$integralApi = new Integral();
$integralApi->test();

Konfigurieren Sie es und laden Sie es automatisch

'APP_AUTOLOAD_PATH'   => '@.ORG,@.ORG.Api',

Dies macht den Aufruf bequem, egal wie viele Klassen sich im Api-Ordner befinden, sie werden automatisch geladen und es ist kein einzelner Referenzimport („@.ORG.Api.Integral“) erforderlich.

Leser, die an weiteren Inhalten zu thinkPHP interessiert sind, können sich die speziellen Themen dieser Website ansehen: „ThinkPHP-Tutorial für die ersten Schritte“, „Zusammenfassung der Fertigkeiten für den Betrieb von ThinkPHP-Vorlagen“, „Zusammenfassung allgemeiner Methoden von ThinkPHP“, „Codeigniter-Tutorial für die ersten Schritte“ , „CI (CodeIgniter) ) Framework Advanced Tutorial“, „Grundlegendes Tutorial für den Einstieg in Smarty Templates“ und „Zusammenfassung der PHP Template-Technologie“.

Ich hoffe, dass dieser Artikel für jedermann bei der PHP-Programmierung basierend auf dem ThinkPHP-Framework hilfreich sein wird.

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