Unter Mac OSX Mavericks mit Homebrew php55 bekomme ich bei jeder Ausführung eines PHP-Befehls die folgende Fehlermeldung (alles läuft gut, es ist nur nervig)
PHP Warning: Module 'intl' already loaded in Unknown on line 0
Ich rannte
php --ini
und die Ausgabe war
php --ini
PHP Warning: Module 'intl' already loaded in Unknown on line 0
Warning: Module 'intl' already loaded in Unknown on line 0
Configuration File (php.ini) Path: /usr/local/etc/php/5.5
Loaded Configuration File: /usr/local/etc/php/5.5/php.ini
Scan for additional .ini files in: /usr/local/etc/php/5.5/conf.d
Additional .ini files parsed: /usr/local/etc/php/5.5/conf.d/ext-apcu.ini,
/usr/local/etc/php/5.5/conf.d/ext-igbinary.ini,
/usr/local/etc/php/5.5/conf.d/ext-intl.ini,
/usr/local/etc/php/5.5/conf.d/ext-memcached.ini,
/usr/local/etc/php/5.5/conf.d/ext-mongo.ini,
/usr/local/etc/php/5.5/conf.d/ext-uuid.ini,
/usr/local/etc/php/5.5/conf.d/ext-xdebug.ini
In der php.ini-Datei eingecheckt und die einzige Stelle, an der intl geladen ist, befindet sich oben und ist auskommentiert. Der Inhalt der anderen Dateien sieht ungefähr so aus:
extension="/usr/local/Cellar/php55/5.5.23/lib/php/extensions/no-debug-non-zts-20121212/intl.so"
dabei ist der Inhalt nach dem letzten Schrägstrich die Erweiterung.
Ich weiß nicht, wo ich sonst hinschauen soll.
Jede Hilfe wird geschätzt
Ich denke, Sie haben Xdebug wahrscheinlich zweimal in php.ini
geladen.
Überprüfen Sie den php.ini
, dass Sie xdebug.so
nicht für die Werte extension=
und zend_extension=
haben.
Überprüfen Sie auch /etc/php5/Apache2
und /etc/php5/cli/
. Sie sollten nicht in jedem php.ini
in diese Verzeichnisse die Erweiterung xdebug.so
laden. Nur eine Datei php.ini
sollte es laden.
Ich hatte das gleiche Problem auf dem Mac, d. H. Warning: Module 'pdo_pgsql' already loaded in Unknown on line 0
. So habe ich es gelöst.
conf.d
. Meiner war im Verzeichnis /usr/local/etc/php/7.0/conf.d
. ext-pdo_pgsql.ini
. Sudo nano ext-pdo_pgsql.ini
ein, um es zu bearbeiten.extension="/usr/local/opt/php70-pdo-pgsql/pdo_pgsql.so"
geben. Kommentieren Sie es , Indem Sie an den Anfang der Zeile ein Semikolon anfügen, d.h. .;extension="/usr/local/opt/php70-pdo-pgsql/pdo_pgsql.so"
.Hoffe das hilft jemandem.
Sie sollten ein Verzeichnis /etc/php2/conf.d haben (zumindest bei Ubuntu mache ich), das eine Reihe von .ini-Dateien enthält, die alle geladen werden, wenn PHP läuft. Diese Dateien können doppelte Einstellungen enthalten, die mit den Einstellungen in php.ini
in Konflikt stehen. Bei meiner PHP -Installation stelle ich eine Datei conf.d/20-intl.ini
mit einer extension=intl.so
-Einstellung fest. Ich wette, das ist dein Konflikt.
Ich habe die 20-mongo.ini-Datei in /etc/php5/cli/conf.d gelöscht und damit das Problem gelöst.
Ich hatte das gleiche Problem nach dem Upgrade von Fedora Server 24 (PHP 5) auf 25 (PHP 7). Nach einer Untersuchung stellte ich fest, dass /etc/php.d/
zwei verschiedene .ini
-Dateien hatte, die extension=geoip.so
laden.
In früheren Versionen von Distros wurde diese Datei mit dem Namen 50-geoip.ini
bezeichnet, die letzte wurde jedoch in 40-geoip.ini
geändert, und ich vermute, dass der alte beim Versionsaktualisierungsvorgang nicht entfernt wurde, während die neue erstellt wurde.
Das war der eigentliche Fall des Problems. Nach dem Entfernen von 50-geoip.ini
aus /etc/php.d/
und dem erneuten Starten von httpd
hat es einfach funktioniert.
Die php.ini-Datei enthält zwei "php_intl.dll" -Dateien in 872- und 968-Nummernzeilen. Wenn php Warnmodul 'intl' bereits in unbekannter Zeile 0 geladen wurde Diese Nachricht konzentriert sich auf Ihre CLI. Dann sollten Sie die Semiclon-Präfixe in Zeile 872 entfernen müssen. Ich gehe davon aus, dass dies geschehen wird .....
Nur zur Veranschaulichung, da dies anderen helfen könnte, die Shared Hosting (cPanel) nutzen.
Ich hatte Fehler auf Shared Hosting Php7.2: Modul 'Imagick' bereits in Unknown in Zeile 0 geladen
Am Anfang sagte der Hosting-Anbieter, es sei meine schlechte Konfiguration (mit Yii2.16). Aber nachdem ich ihnen gezeigt hatte, dass das gesamte Internet dieses Problem mit der Serverkonfiguration zu tun hatte, hörten sie mir zu. Nachdem ich bewiesen hatte, dass es auf PHP 7.1 keinen Fehler gab, begannen sie, nach dem Fehler zu suchen.
Wie sie mir sagten - der Fehler lag an der Konfiguration in Perl-Modulen oder dem Paket PEAR), aber sie sagten mir nicht das eigentliche Problem.
Also, wenn Sie auf Shared Hosting sind - sprechen Sie mit Ihrem Provider und experimentieren Sie mit PHP Versionen (wenn Sie sie ändern können)).
Kommentieren Sie diese beiden Zeilen in php.ini
;extension=imagick.so
;extension="ixed.5.6.lin"
es sollte das Problem beheben.
Um dieses Problem zu beheben, müssen Sie die Datei php.ini (oder extensions.ini) bearbeiten und die bereits kompilierten Erweiterungen auskommentieren. Nach der Bearbeitung sieht Ihre Ini-Datei beispielsweise wie folgt aus:
;extension=pcre.so
;extension=spl.so
Quelle: http://www.somacon.com/p520.php
In meinem Fall hatte ich die; extension = php_curl.so in php.ini unkommentiert, aber Ubuntu hat diese Erweiterung bereits an anderer Stelle aufgerufen.
Um dies "woanders" zu finden, wird auf php.ini informiert. In meinem Fall: /Etc/php/7.1/Apache2/conf.d/20-curl.ini war der Pfad.
Nun bearbeiten wir diese Datei (Terminal):
Sudo nano /etc/php/7.1/Apache2/conf.d/20-curl.ini
Kommentieren Sie die Erweiterung. Php_curl.so
Datei speichern und Apache neu starten:
Sudo systemctl restart Apache2