Yii2框架打包成Phar包出错的经历
Yii2框架打包成Phar包报错的经历
以yii2为例
打包文件过程比较简单,但打包好以后,一直报错:
PHP Fatal error: Uncaught yii\base\InvalidParamException: The directory does not exist: phar:///Users/jimmy/PHP/Library/yii2-advanced/yii2.phar/console in phar:///Users/jimmy/PHP/Library/yii2-advanced/yii2.phar/base/Module.php:224
一开始一直以为是打包出了问题有文件没有被打包进去,换了各种姿势去打包,还是报各种错。
最后没办法的情况下,去看了报错的这个文件,发现用了realpath来判断路径是否存在,注释掉后,基本正常。这是php一个bug。
<code>/** * Sets the root directory of the module. * This method can only be invoked at the beginning of the constructor. * @param string $path the root directory of the module. This can be either a directory name or a path alias. * @throws InvalidParamException if the directory does not exist. */public function setBasePath($path){ $path = Yii::getAlias($path); $p = $path;//realpath(); if ($p !== false && is_dir($p)) { $this->_basePath = $p; } else { throw new InvalidParamException("The directory does not exist: $path"); }}</code>
http://git.oschina.net/web3d/codes/zyhsoev0b3i9u5njgaf42

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen
![Active Directory-Benutzer und -Computer fehlen [Auf drei Arten behoben]](https://img.php.cn/upload/article/000/465/014/168196830849131.png?x-oss-process=image/resize,m_fill,h_207,w_330)
Der Verlust von Active Directory-Benutzern und -Computern (ADUC) ist eines der frustrierendsten Probleme, über die viele Windows Pro-Benutzer berichten. ADUC ist ein unglaubliches MMC-Snap-In, das Administratoren die Verwaltung von Microsoft Active Directory ermöglicht. Aus irgendeinem Grund fehlt es jedoch in den Windows Server- oder Enterprise/Pro-Editionen. Schauen wir uns genauer an, warum es fehlt und wie wir es beheben können. Verfügt Windows 11 über Active Directory? Active Directory ist für jeden nützlich, der Remote verwalten möchte

So legen Sie die Umgebungsvariable PATH in Linux-Systemen fest. In Linux-Systemen wird die Umgebungsvariable PATH verwendet, um den Pfad anzugeben, in dem das System in der Befehlszeile nach ausführbaren Dateien sucht. Durch die korrekte Einstellung der Umgebungsvariablen PATH können wir Systembefehle und benutzerdefinierte Befehle an jedem Ort ausführen. In diesem Artikel wird erläutert, wie die Umgebungsvariable PATH in einem Linux-System festgelegt wird, und es werden detaillierte Codebeispiele bereitgestellt. Zeigen Sie die aktuelle PATH-Umgebungsvariable an. Führen Sie den folgenden Befehl im Terminal aus, um die aktuelle PATH-Umgebungsvariable anzuzeigen: echo$P

Herausgeber des Machine Power Report: Wu Xin Die heimische Version des humanoiden Roboters + eines großen Modellteams hat zum ersten Mal die Betriebsaufgabe komplexer flexibler Materialien wie das Falten von Kleidung abgeschlossen. Mit der Enthüllung von Figure01, das das multimodale große Modell von OpenAI integriert, haben die damit verbundenen Fortschritte inländischer Kollegen Aufmerksamkeit erregt. Erst gestern veröffentlichte UBTECH, Chinas „größter Bestand an humanoiden Robotern“, die erste Demo des humanoiden Roboters WalkerS, der tief in das große Modell von Baidu Wenxin integriert ist und einige interessante neue Funktionen aufweist. Jetzt sieht WalkerS, gesegnet mit Baidu Wenxins großen Modellfähigkeiten, so aus. Wie Figure01 bewegt sich WalkerS nicht umher, sondern steht hinter einem Schreibtisch, um eine Reihe von Aufgaben zu erledigen. Es kann menschlichen Befehlen folgen und Kleidung falten

Methode zum Festlegen der Pfadumgebungsvariablen: 1. Windows-System, öffnen Sie „Systemeigenschaften“, klicken Sie auf die Option „Eigenschaften“, klicken Sie auf „Erweiterte Systemeinstellungen“, wählen Sie im Fenster „Systemeigenschaften“ die Registerkarte „Erweitert“ und dann Klicken Sie auf die Schaltfläche „Umgebungsvariablen“, suchen Sie nach „Pfad“ und klicken Sie darauf, um ihn zu bearbeiten und zu speichern. 2. Öffnen Sie bei Linux-Systemen das Terminal, öffnen Sie Ihre Bash-Konfigurationsdatei und fügen Sie am Ende „export PATH=$PATH: Dateipfad“ hinzu die Datei und speichern Sie sie; 3. Für MacOS-Systeme ist der Vorgang derselbe wie oben.

Mit der Entwicklung von PHP und der kontinuierlichen Erweiterung der Anwendungsszenarien ist die Phar-Erweiterung zu einem wichtigen Bestandteil der PHP-Programmierung geworden. Phar ist die Abkürzung für PHPArchive, das mehrere PHP-Dateien und -Ressourcen zur einfachen Verteilung und Verwaltung in einer einzigen Datei packen kann. In diesem Artikel wird erläutert, wie Sie die Phar-Erweiterung von PHP zum Packen und Verwalten verwenden. Installation der Phar-Erweiterung Zuerst müssen wir prüfen, ob PHP die Phar-Erweiterung installiert hat. Geben Sie unter Linux den folgenden Befehl über das Terminal ein: php -m

So legen Sie die Umgebungsvariable PATH unter Linux richtig fest. Im Linux-Betriebssystem sind Umgebungsvariablen einer der wichtigen Mechanismen zum Speichern von Konfigurationsinformationen auf Systemebene. Unter anderem wird die Umgebungsvariable PATH verwendet, um die Verzeichnisse anzugeben, in denen das System nach ausführbaren Dateien sucht. Die korrekte Einstellung der Umgebungsvariablen PATH ist ein wichtiger Schritt, um den normalen Betrieb des Systems sicherzustellen. In diesem Artikel wird erläutert, wie Sie die Umgebungsvariable PATH unter Linux richtig festlegen, und es werden spezifische Codebeispiele bereitgestellt. 1. Überprüfen Sie die aktuelle Umgebungsvariable PATH und geben Sie den folgenden Befehl in das Terminal ein

Konfigurationsschritte: 1. Suchen Sie das Java-Installationsverzeichnis; 2. Suchen Sie die Einstellungen der Systemumgebungsvariablen. 3. Suchen Sie im Fenster der Umgebungsvariablen die Variable mit dem Namen „Pfad“ und klicken Sie auf die Schaltfläche „Bearbeiten“; Klicken Sie im Variablenfenster auf die Schaltfläche „Neu“ und geben Sie im Popup-Dialogfeld den Java-Installationspfad ein. 5. Nachdem Sie bestätigt haben, dass die Eingabe korrekt ist, klicken Sie auf die Schaltfläche „OK“.

„Die Rolle und Bedeutung der PATH-Umgebungsvariablen in Linux“ Die PATH-Umgebungsvariable ist eine der sehr wichtigen Umgebungsvariablen im Linux-System. Sie definiert die Verzeichnisse, in denen das System nach ausführbaren Programmen sucht. Wenn der Benutzer im Linux-System einen Befehl in das Terminal eingibt, durchsucht das System nacheinander die in der Umgebungsvariablen PATH aufgeführten Verzeichnisse, um festzustellen, ob die ausführbare Datei des Befehls vorhanden ist. Andernfalls wird „commandnotfound“ angezeigt. Die Rolle der PATH-Umgebungsvariablen: Vereinfacht
