Heim php教程 php手册 如何避免使用php的require_once

如何避免使用php的require_once

Jun 21, 2016 am 08:52 AM
autoload defined once require

  我们知道,在php中使用require_once/include_once虽然方便,但是代价昂贵,据测试数据来看,require_once比require慢3-4倍,所以在php开发中,我们应该尽量使用require/include。

  列一下俺常用的避免require/include的方法。

  使用__autoload

  php5可以使用__autoload来避免require,用的好的话,代码里头甚至看不到几个require,实在是安逸啊。测试结果表明,使用__autoload之后的new Foo; 比require_once ‘foo.php’; new Foo; 大概要快3倍左右。

  补充:为了避免autoload冲突,可以考虑使用spl_autoload_register(PHP 5 >= 5.1.2)来改变魔术函数__autoload的行为。

  使用defined检测是否载入过

  在代码开头使用defined检测是否定义过对应的常量,如果有的话,直接return。

  

  if(!defined('_MYCLASS_'))

  return;

  define('_MYCLASS_', 1);

  class MyClass { ... }

  ?>

  测试了一下,defined的性能也不是太好…

  require前检查

  用class_exists或者function_exists检查一下,确认没有载入过再出手,至少比require_once能快上3倍。php4也可以用上。

  class_exists('myClass') or require('/path/to/myClass.class.php');



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ßer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

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)

vue3+vite: So beheben Sie den Fehler bei der Verwendung von require zum dynamischen Importieren von Bildern in src vue3+vite: So beheben Sie den Fehler bei der Verwendung von require zum dynamischen Importieren von Bildern in src May 21, 2023 pm 03:16 PM

vue3+vite:src verwendet „require“, um Bilder dynamisch zu importieren, und vue3+vite importiert dynamisch mehrere Bilder. Wenn Sie „requireisnotdefined“ verwenden, wird eine Fehlermeldung angezeigt like vue2 like imgUrl:require(' .../assets/test.png') wird importiert, da Typescript Require nicht unterstützt, daher wird Import verwendet. So lösen Sie das Problem: Verwenden Sieawaitimport

Was sind die Verwendungszwecke von require? Was sind die Verwendungszwecke von require? Nov 27, 2023 am 10:03 AM

Verwendung von require: 1. Module einführen: In vielen Programmiersprachen wird require verwendet, um externe Module oder Bibliotheken einzuführen, damit die von ihnen bereitgestellten Funktionen im Programm verwendet werden können. In Ruby können Sie beispielsweise „require“ verwenden, um Bibliotheken oder Module von Drittanbietern zu laden. 2. Klassen oder Methoden importieren: In einigen Programmiersprachen wird „require“ verwendet, um bestimmte Klassen oder Methoden zu importieren, damit sie in der aktuellen Datei verwendet werden können 3. Führen Sie bestimmte Aufgaben aus: In einigen Programmiersprachen oder Frameworks wird require zum Ausführen bestimmter Aufgaben oder Funktionen verwendet.

Schritte zur Behebung des schwerwiegenden Fehlers im PHP-Header: require(): Fehler beim Öffnen von erforderlichem 'data/tdk.php' (include_path='.;C:\php\pear') Schritte zur Behebung des schwerwiegenden Fehlers im PHP-Header: require(): Fehler beim Öffnen von erforderlichem 'data/tdk.php' (include_path='.;C:\php\pear') Nov 27, 2023 pm 12:51 PM

Schritte zum Beheben von fatalerror:require():Failedopeningrequired'data/tdk.php'(include_path='.;C:phppear') im PHP-Header Bei der Entwicklung von Websites oder Anwendungen mit PHP stoßen wir häufig auf verschiedene Fehler. Einer der häufigsten Fehler ist „fatalerror:require():Failed

Eine kurze Analyse der Lösungen für Fehlerberichte in PHP definierte Urteile Eine kurze Analyse der Lösungen für Fehlerberichte in PHP definierte Urteile Mar 23, 2023 pm 04:35 PM

PHP ist eine häufig verwendete serverseitige Sprache und die Entwicklungssprache für viele große Websites. Im PHP-Entwicklungsprozess verwenden wir häufig die Funktion define(), um festzustellen, ob eine Konstante definiert ist. Wenn wir jedoch die Funktion „defined()“ verwenden, stoßen wir manchmal auf einige Fehlermeldungen. Dieser Artikel führt Sie zur Lösung des Problems der PHP-definierten Beurteilung von Fehlern.

Detaillierte Erläuterung der Rolle und Verwendung des Schlüsselworts require in PHP Detaillierte Erläuterung der Rolle und Verwendung des Schlüsselworts require in PHP Jun 28, 2023 pm 11:31 PM

Ausführliche Erläuterung der Rolle und Verwendung des Schlüsselworts require in PHP. In der PHP-Entwicklung ist require ein sehr häufig verwendetes Schlüsselwort. Seine Funktion besteht darin, die angegebene Datei zur Verwendung durch das aktuelle Skript einzuschließen. In diesem Artikel wird die Funktion und Verwendung des Schlüsselworts require ausführlich erläutert. 1. Die Rolle des Schlüsselworts require Das Schlüsselwort require kann den Inhalt einer Datei in das aktuelle Skript einbinden. Es wird normalerweise verwendet, um einige erforderliche externe Dateien einzuschließen, z. B. Bibliotheksdateien, Konfigurationsdateien usw. Verwenden Sie die Anforderung

Wie funktionieren Autoloading und Namespaces in Composer? Wie funktionieren Autoloading und Namespaces in Composer? Jun 04, 2024 pm 09:03 PM

So funktionieren Autoloading und Namespaces in Composer: Autoloading: Composer nutzt die Autoloading-Funktion, um Klassen bei Bedarf automatisch zu laden, wodurch die lästigen manuellen Aufrufe entfallen. Namespace: Namespace organisiert Code und vermeidet Konflikte mit demselben Klassennamen. Composer unterstützt Namespaces über den PSR-4-Standard, der die Zuordnung zwischen Namespaces und Verzeichnissen festlegt. Praktischer Fall: Wenn Sie eine Bibliothek eines Drittanbieters verwenden, konfigurieren Sie die erforderlichen und automatisch ladenden Teile in Composer.json und geben Sie den Bibliotheksnamen und die Zuordnungsregeln an. Dadurch können wir Klassen aus der Bibliothek direkt verwenden, ohne Dateien manuell laden zu müssen.

Schritte zur Behebung eines schwerwiegenden Fehlers im PHP-Header: require(): Fehler beim Öffnen der erforderlichen Datei „data/tdk.php' Schritte zur Behebung eines schwerwiegenden Fehlers im PHP-Header: require(): Fehler beim Öffnen der erforderlichen Datei „data/tdk.php' Nov 27, 2023 am 10:41 AM

Schritte zum Beheben von FatalError:require():Failedopeningrequired'data/tdk.php' im PHP-Header Bei der Entwicklung und Pflege von PHP-Websites stoßen wir häufig auf verschiedene Fehler und Ausnahmen. Einer der häufigsten Fehler ist „FatalError:require():Failedopeningrequired'data/tdk.php‘“.

So verwenden Sie den Ereignismodifikator .once in Vue, um zu erkennen, dass das Ereignis nur einmal ausgelöst wird So verwenden Sie den Ereignismodifikator .once in Vue, um zu erkennen, dass das Ereignis nur einmal ausgelöst wird Jun 11, 2023 pm 07:58 PM

Vue ist ein beliebtes Frontend-Framework, das viele praktische Funktionen bietet, darunter ein Event-System. Das Ereignissystem von Vue ermöglicht es Entwicklern, Ereignisse einfach zu binden und auf Ereignisse zu warten. Ereignismodifikatoren sind eine Funktion im Vue-Ereignissystem, mit der das Verhalten von Ereignissen geändert werden kann. In diesem Artikel stellen wir vor, wie Sie den Ereignismodifikator .once in Vue verwenden, um ein Ereignis zu erreichen, das nur einmal ausgelöst wird. Was sind Ereignismodifikatoren? Ereignismodifikatoren sind eine Funktion im Vue-Ereignissystem, mit der das Verhalten von Ereignissen geändert werden kann. Vue bietet einige Ereignismodifikatoren

See all articles