Heim php教程 php手册 Drupal模块开发之创建自己的钩子

Drupal模块开发之创建自己的钩子

May 26, 2016 am 08:20 AM
foreach

Drupal可以让第三方模块创建自己的钩子。在通常的实践中,有两种类型的钩子你可能想要创建,一种是内容修改类的钩子,一种是拦截类的钩子。

Drupal的钩子系统允许和模块交互并改变其他模块的逻辑,甚至是改变Drupal核心逻辑。这是一个非常简单的系统,甚至可以让第三方模块创建自己的钩子。在通常的实践中,有两种类型的钩子你可能想要创建,一种是内容修改类的钩子,一种是拦截类的钩子。修改类的钩子提供了一个标准的方法来修改某个特定对象或变量的内容,典型的是使用 drupal_alter()函数。拦截类的钩子可以让第三方模块在模块执行过程中根据条件做出一些动作。

例1:简单调用

<?php
// will call all modules implementing hook_hook_name
module_invoke_all(&#39;hook_name&#39;);
?>
Nach dem Login kopieren

例2:聚合结果

<?php
$result = array();
foreach (module_implements(&#39;hook_name&#39;) as $module) {
// will call all modules implementing hook_hook_name and
// push the results onto the $result array
$result[] = module_invoke($module, &#39;hook_name&#39;);
}
?>
Nach dem Login kopieren

例3:使用 drupal_alter() 改变内容

<?php
$data = array(
&#39;key1&#39; => &#39;value1&#39;,
&#39;key2&#39; => &#39;value2&#39;,
);
// will call all modules implementing hook_my_data_alter
drupal_alter(&#39;my_data&#39;, $data);
?>
Nach dem Login kopieren

例4:引用传参,不能使用 module_invoke

<?php
// @see user_module_invoke()
foreach (module_implements(&#39;hook_name&#39;) as $module) {
$function = $module . &#39;_hook_name&#39;;
// will call all modules implementing hook_hook_name
// and can pass each argument as reference determined
// by the function declaration
$function($arg1, $arg2);
}
?>
Nach dem Login kopieren


教程地址:

欢迎转载!但请带上文章地址^^

Erklärung dieser Website
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

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Was ist der Unterschied zwischen der Verwendung von foreach und iterator zum Löschen von Elementen beim Durchlaufen von Java ArrayList? Was ist der Unterschied zwischen der Verwendung von foreach und iterator zum Löschen von Elementen beim Durchlaufen von Java ArrayList? Apr 27, 2023 pm 03:40 PM

1. Der Unterschied zwischen Iterator und foreach ist der polymorphe Unterschied (die unterste Ebene von foreach ist Iterator ein Schnittstellentyp, und es ist egal, ob for und foreach der Typ bekannt ist). 1. Warum heißt es, dass die unterste Ebene von foreach der von Iterator geschriebene Code ist: 2. Der Unterschied zwischen „remove in foreach“ und „iterator“. im Alibaba Java Development Manual, aber in Fall 1 wird kein Fehler gemeldet, und in Fall 2 wird zuerst ein Fehler gemeldet (java. util.ConcurrentModificationException).

So bestimmen Sie die Anzahl der foreach-Schleifen in PHP So bestimmen Sie die Anzahl der foreach-Schleifen in PHP Jul 10, 2023 pm 02:18 PM

​Die Schritte für PHP, um die Nummer der foreach-Schleife zu bestimmen: 1. Erstellen Sie ein Array von „$fruits“; 2. Erstellen Sie eine Zählervariable „$counter“ mit einem Anfangswert von 0. 3. Verwenden Sie „foreach“, um eine Schleife durchzuführen durch das Array und Erhöhen Sie den Wert der Zählervariablen im Schleifenkörper und geben Sie dann jedes Element und seinen Index aus. 4. Geben Sie den Wert der Zählervariablen außerhalb der „foreach“-Schleife aus, um zu bestätigen, welches Element die Schleife erreicht.

PHP gibt ein Array mit umgedrehten Schlüsseln zurück PHP gibt ein Array mit umgedrehten Schlüsseln zurück Mar 21, 2024 pm 02:10 PM

In diesem Artikel wird ausführlich erläutert, wie PHP nach dem Umdrehen eines Schlüsselwerts ein Array zurückgibt. Der Herausgeber hält dies für recht praktisch, daher teile ich es Ihnen als Referenz mit. Ich hoffe, dass Sie nach dem Lesen dieses Artikels etwas gewinnen können. PHP-Schlüsselwert-Flip Der Array-Schlüsselwert-Flip ist eine Operation für ein Array, bei der die Schlüssel und Werte im Array ausgetauscht werden, um ein neues Array mit dem ursprünglichen Schlüssel als Wert und dem ursprünglichen Wert als Schlüssel zu generieren. Implementierungsmethode In PHP können Sie das Schlüsselwert-Umdrehen eines Arrays mit den folgenden Methoden durchführen: array_flip()-Funktion: Die array_flip()-Funktion wird speziell für Schlüsselwert-Umdrehungsvorgänge verwendet. Es erhält ein Array als Argument und gibt ein neues Array mit vertauschten Schlüsseln und Werten zurück. $original_array=[

PHP gibt das aktuelle Element in einem Array zurück PHP gibt das aktuelle Element in einem Array zurück Mar 21, 2024 pm 12:36 PM

In diesem Artikel wird das aktuelle Element im von PHP zurückgegebenen Array ausführlich erläutert. Der Herausgeber hält es für recht praktisch, daher teile ich es Ihnen als Referenz mit. Ich hoffe, dass Sie nach dem Lesen dieses Artikels etwas gewinnen können. Das aktuelle Element in einem PHP-Array abrufen PHP bietet eine Vielzahl von Methoden für den Zugriff auf und die Bearbeitung von Arrays, einschließlich des Abrufens des aktuellen Elements in einem Array. Im Folgenden werden einige häufig verwendete Techniken vorgestellt: 1. Funktion current() Die Funktion current() gibt das Element zurück, auf das der interne Zeiger des Arrays aktuell zeigt. Der Zeiger zeigt zunächst auf das erste Element des Arrays. Verwenden Sie die folgende Syntax: $currentElement=current($array);2.key() Funktion Die Funktion key() gibt das Element zurück, auf das der interne Zeiger des Arrays aktuell zeigt

Was ist der Unterschied zwischen foreach und for-Schleife? Was ist der Unterschied zwischen foreach und for-Schleife? Jan 05, 2023 pm 04:26 PM

Unterschiede: 1. for durchläuft jedes Datenelement über den Index, während forEach die Datenelemente des Arrays über das zugrunde liegende JS-Programm durchläuft. 2. for kann die Ausführung der Schleife über das Schlüsselwort break beenden, forEach jedoch nicht . for kann die Ausführung der Schleife steuern, indem es den Wert der Schleifenvariablen steuert, forEach jedoch nicht. 4. for kann Schleifenvariablen außerhalb der Schleife aufrufen, forEach kann jedoch keine Schleifenvariablen außerhalb der Schleife aufrufen ist höher als forEach.

Wie kann ich mit der Funktion forEach die Eigenschaften eines Objekts durchlaufen? Wie kann ich mit der Funktion forEach die Eigenschaften eines Objekts durchlaufen? Nov 18, 2023 pm 06:10 PM

Wie kann ich mit der Funktion forEach die Eigenschaften eines Objekts durchlaufen? In JavaScript müssen wir häufig die Eigenschaften von Objekten durchlaufen. Wenn Sie die Eigenschaften eines Objekts auf prägnante Weise durchlaufen möchten, ist die Funktion forEach eine sehr gute Wahl. In diesem Artikel erklären wir, wie Sie die Funktion forEach verwenden, um die Eigenschaften eines Objekts zu durchlaufen, und stellen spezifische Codebeispiele bereit. Lassen Sie uns zunächst die grundlegende Verwendung der forEach-Funktion verstehen. forEach-Funktion ist Java

So erhalten Sie den Indexwert des aktuellen Elements in der PHP-Foreach-Schleife So erhalten Sie den Indexwert des aktuellen Elements in der PHP-Foreach-Schleife Mar 23, 2023 am 09:17 AM

In PHP wird die foreach-Anweisung häufig zum Durchlaufen von Arrays und Objekten verwendet. Während der Schleife müssen wir manchmal das aktuelle Element der Schleife abrufen. In diesem Artikel wird erläutert, wie Sie den Indexwert des aktuellen Elements in der PHP-foreach-Schleife abrufen.

Detaillierte Erläuterung der Funktion und Verwendung des Schlüsselworts break in PHP Detaillierte Erläuterung der Funktion und Verwendung des Schlüsselworts break in PHP Jun 28, 2023 pm 06:39 PM

Ausführliche Erläuterung der Rolle und Verwendung des Schlüsselworts „break“ in PHP. In der PHP-Programmierung ist „break“ eine Kontrollflussanweisung, die verwendet wird, um die aktuelle Schleife oder Switch-Anweisung zu unterbrechen und aus der Schleife oder dem Switch zu springen. In diesem Artikel werden die Rolle und Verwendung des Schlüsselworts break im Detail vorgestellt. 1. Unterbrechung einer Schleife In einer Schleifenstruktur besteht die Funktion von Unterbrechung darin, die Schleife vorzeitig zu beenden und aus dem Schleifenkörper zu springen, um den Code nach der Schleife auszuführen. Zu den gängigen Schleifenstrukturen gehören for, while und do...while. in der for-Schleife

See all articles