Heim  >  Artikel  >  Backend-Entwicklung  >  So fügen Sie Dateien mit ThinkPHP dynamisch ein

So fügen Sie Dateien mit ThinkPHP dynamisch ein

不言
不言Original
2018-06-11 13:51:111572Durchsuche

In diesem Artikel wird hauptsächlich die Methode zum dynamischen Einbinden von Dateien in ThinkPHP vorgestellt. Dies ist eine sehr praktische Fähigkeit bei der Entwicklung von ThinkPHP-Projekten. Freunde, die sie benötigen, können darauf zurückgreifen.

Das Beispiel dieses Artikels beschreibt die Implementierung von dynamisch eingebundene Dateien in die ThinkPHP-Methode. Teilen Sie es als Referenz mit allen. Die spezifische Analyse lautet wie folgt:

Problembeschreibung: Es ist auch ein sehr häufiges Problem, bei der Durchführung von Projekten auf Probleme zu stoßen. Um die Verwaltung zu erleichtern, müssen diese im Allgemeinen implementiert werden Die Verwendung von Include-Dateien stellt eine Methode zum Einschließen von Dateien dar. Während des laufenden Prozesses habe ich festgestellt, dass bei der Anforderung nur die Vorlagedatei angefordert wird. Wenn Sie jedoch auf ein Menü stoßen, ist es schwierig zu handhaben.

Ich habe im Internet eine Lösung gefunden: Verwenden Sie Widget

1 Wir implementieren ein Widget für die klassifizierte Anzeige Seite Zunächst müssen wir das, was wir zuerst definieren, wie folgt implementieren:

class CateWidget extends Action {  
    public function menu(){  
        return 'menuWidget';  
    }  
}

Beachten Sie, dass es im Widget-Paket definiert ist, das sich von der allgemeinen Aktion unterscheidet

2. Dann verwenden wir die R-Methode in der Vorlage „Call this Widget“ (die erweiterte Widget-Methode verwendet die W-Methode in der Vorlage). Das Ausgabeergebnis nach der Ausführung von

{:R('Cate/Menu','','Widget')}

ist: menuWidget

3. Wenn die Menümethode der CateWidget-Klasse geändert wird in:

, lautet der Code wie folgt :

class CateWidget extends Action {  
    public function menu(){  
        echo 'menuWidget';  
    }  
}


4. Die Verwendung in der Vorlage muss geändert werden in:

Der Code lautet wie folgt:

{~R('Cate/Menu','','Widget')}

5 Wenn Sie beim Aufrufen des Widgets Parameter verwenden müssen, können Sie es wie folgt definieren:

Der Code lautet wie folgt:

class CateWidget extends Action {  
    public function menu($id,$name){  
        echo $id.':'.$name;  
    }  
}

6. Um Parameter in der Vorlage aufzurufen, verwenden Sie:

Der Code lautet wie folgt:

{:R('Cate/Menu',array(5,'thinkphp'),'Widget')}

dann wird 5 ausgegeben: thinkphp

7. Nehmen wir ein komplizierteres Beispiel:

Der Code lautet wie folgt:

class CateWidget extends Action {  
    public function menu(){  
        $menu = M('Cate')->getField('id,title');  
        $this->assign('menu',$menu);  
        $this->display('Cate:menu');  
    }  
}

8. Die CateWiget-Klasse rendert eine Vorlagendatei Tpl/Cate/menu.html. Die Flexibilität beim Aufrufen der Vorlage ist auch der Unterschied zwischen der Verwendung dieser Methode zur Implementierung von Widget (in die Widget-Erweiterungsmethode, die renderFile-Methode muss aufgerufen werden, um die Vorlage zu rendern).

Verwendung in der menu.html-Vorlagendatei: {$key}:{$title}

Das Obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, dass er für das Studium hilfreich ist Verwandte Bitte achten Sie auf den Inhalt der chinesischen PHP-Website!

Verwandte Empfehlungen:

Über den Code der ThinkPHP-Datei-Cache-Klasse

Analyse der Funktionen und Verwendung von Widgets in thinkPHP5-Framework

Das obige ist der detaillierte Inhalt vonSo fügen Sie Dateien mit ThinkPHP dynamisch ein. 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