PHP-waarschuwing: PHP-opstart: kan dynamische bibliotheek niet laden

Ik voer een PHP-script uit en krijg deze foutmelding:

PHP-waarschuwing: PHP-opstart: kan dynamische bibliotheek niet laden ‘/usr/local/lib/php/extensions/no-debug-non-zts-20090626/ixed.5.2.lin’ – /usr/local/lib/ php/extensions/no-debug-non-zts-20090626/ixed.5.2.lin: kan het gedeelde objectbestand niet openen: geen bestand of map in Unknown op regel 0

Wat betekent dat?


Antwoord 1, autoriteit 100%

Het betekent dat er een extension=...of zend_extension=...regel in een van uw php-configuratiebestanden (php.ini, of een andere er dichtbij)die die extensie probeert te laden: ixed.5.2.lin

Helaas bestaat dat bestand of pad niet of zijn de rechten onjuist.

  1. Probeer te zoeken in de .inibestanden die zijn geladen door PHP (phpinfo()kan aangeven welke dat zijn) – een van hen zou moeten proberen die extensie te laden .
  2. Corrigeer het pad naar het bestand of geef commentaar op de bijbehorende regel.

Antwoord 2, autoriteit 70%

Als je Linux gebruikt, kun je alle geladen configuratiebestanden vinden door dit in shell te typen:

php -r "print phpinfo();" | grep ".ini"

UPDATE:
Zoals vermeld in opmerkingen, kan dit nog nauwkeuriger zijn:

php -i | grep ini

Antwoord 3, autoriteit 37%

phpStom met XAMPP

TL;DR Behalve om te controleren of de bestanden bestaan, moet u mogelijk de stationsletter toevoegen aan sommige records in uw php.ini-bestand

Ik kreeg plotseling een probleem met het gebruik van phpStorm 7 voor het debuggen van php met xampp en xdebug. Toen ik probeerde intellij interperter in te stellen op xampps php, kreeg ik veel van de waarschuwingen zoals die in de vraag, bijvoorbeeld:

Kan dynamische bibliotheek ‘/xampp/php/ext/php_bz2.dll’ niet laden

Om de een of andere reden moest ik mijn stationsletter toevoegen aan de records van extension_dir en browscap in het php.ini-bestand:

extension_dir = "\xampp\php\ext"
browscap = "\xampp\php\extras\browscap.ini"

naar

extension_dir = "e:\xampp\php\ext"
browscap = "e:\xampp\php\extras\browscap.ini"

Antwoord 4, autoriteit 30%

Als je de fout gewoon wilt laten verdwijnen en je hebt de extensie niet nodig, becommentarieer dan de regel in php.ini. Maar als u het probleem echt wilt oplossen, vindt u hier wat aanvullende informatie.

Hier zijn verschillende oorzaken voor op basis van de exacte module, maar er zijn ook enkele algemene richtlijnen.

  1. Open phpinfo()en zoek naar extension_dirin het gedeelte Core. Dit is waar je modules zouden moeten staan.

Bijvoorbeeld /usr/lib/php/modulesvoor Unix/Linux.

  1. Als het bestand inderdaad bestaat, zorg er dan voor dat de rechten voldoende zijn.
  2. Als het bestand niet bestaat, gebruik dan de onderstaande bronnen om het te installeren.

Installatie op *nix (PEAR)< br>
Installatie van extensies op Windows


Antwoord 5, Autoriteit 11%

php -r "echo php_ini_loaded_file();"

Hier kunt u zien in CLI huidige ini geladen bestand, zoeken er voor uw toestel, weg naar het onjuist is.


Antwoord 6, Autoriteit 11%

Laden .dll in Linux

Ik heb deze waarschuwing terwijl ik probeerde om een ​​php-extensie via de php.ini file;

totdat ik erachter dat je niet kunt laden .dll extensies in Linux,

maar je moet opmerking de extensies die u wilt importeren ;extension= ... .dllen installeert het goed via sudo apt-get install php-...

Opmerking . ...is de extensie naam die u wilt inschakelen


Antwoord 7, Autoriteit 5%

Merk op dat u ook deze fout kunt krijgen als je PHP-bibliotheek van de “andere” directory opening toestemming heeft. In mijn geval, ik heb gemerkt dat dit bij het gebruik van php -lom syntax checken een script in mijn tekstverwerker. Dit betekende dat sinds mijn rekening heette “volomike”, die rekening heeft toestemming om de bibliotheken te voeren dat de phpopdracht ingeroepen hebben.

Bijvoorbeeld, op Ubuntu 14,04, ik PHP5 automatisch geïnstalleerd op het pad /usr/lib/php5/20121212+lfs. Echter, omdat ik werkte in C++ in het bouwen van een aantal gedeelde objecten, knoeide ik rond met de directory permissies en geschroefd dingen zodanig dat niet-root-accounts niet de directory uitvoeren (directory geopend) machtigingen om te bekijken /usr/lib/php5/20121212+lfs. Dus, ik typte de volgende opdracht om dat probleem te verhelpen:

sudo chmod o+x /usr/lib/php5/20121212+lfs.

Nu wanneer ik php -l example.phpals een niet-rootgebruiker geeft, geeft het me nooit meer “Onbeschadelijk om dynamische bibliotheek” -probleem te laden.


Antwoord 8, Autoriteit 4%

Ik had hetzelfde probleem op XAMPP voor Windows wanneer ik de componist probeer te installeren.
Ik deed php -ven php gooien fout:

Kan geen dynamische bibliotheek “/xampp/php/ext/php_bz2.dll ‘

laden

Het kostte me een tijdje totdat ik me realiseerde dat ik mijn XAMPP moet instellen. Dus ik voer setup_xampp.baten PHP-terugkeer terug naar Works zoals een charme.


Antwoord 9, Autoriteit 4%

Ik had hetzelfde probleem op XAMPP voor Windows10 wanneer ik de componist probeer te installeren.

Kan geen dynamische bibliotheek “/xampp/php/ext/php_bz2.dll ‘

laden

Volg deze stappen

  1. Open gewoon uw huidige_xampp_containing_drive: \ XAMPP (standaard_xampp_folder) \ PHP \ PHP.INI in Textoritor (zoals Notepad ++)
  2. Nu vinden – is het Current_xampp_Containing_Drive: \ XAMPP?
  3. Zoek dan niet de “extension_dir” en ontvang de aandrijfnaam (C, D of uw gewenste schijf) zoals.

Extension_DIR = “F: \ XAMPP731 \ PHP \ EXT” (hier gevonden_drive_name_from_the_file is f)

  1. Nogmaals vervangen door vondste_drive_name_from_the_file: \ Xampp met Current_xampp_Containing_Drive: \ Xampp en Opslaan.
  2. Start nu opnieuw de voortgang van de componistinstallatie, ik denk dat uw probleem zal worden opgelost.

Antwoord 10, Autoriteit 4%

In mijn geval kreeg ik deze fout omdat ik een draadveilige versie van de DLL had gedownload (infixed with -ts-), maar mijn installatie van PHP was een niet-draads veilig (Infixed met -ts-). De juiste versie van de DLL downloaden, precies overeenkomen met mijn PHP-installatieversie die het probleem is opgelost.


Antwoord 11, Autoriteit 2%

Ik had deze fout bij een aantal modules toen ik aan mijn server verschillende versies van PHP had uitgevoerd. Om dit te sorteren, moest ik de pakketten installeren die het niet kon vinden voor die specifieke PHP-versie. Dus, bijvoorbeeld als ik zag: –

PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/20160303/xml.so'

Ik zou de bibliotheek voor de PHP-versie specifiek installeren: –

sudo apt-get install php7.1-xml

en start vervolgens Apache opnieuw op. Het voor mij opgelost. U kunt uw versie als volgt controleren: –

php -v

Antwoord 12, Autoriteit 2%

Na Windows 10 XAMPPNu heb ik LAMPP (XAMPP)op ubuntu geïnstalleerd. Windows XAMPPHad een stuk minder om te configureren vergelijken met Mac (iOS) maar nu met Linux Ubuntu had ik nog een paar sinds er meer in Linux (een goede zaak).

Ik verwarde en geactiveerd mysqli.dll(en mysql.dll: wissen “#” in /etc/php/7.2/cli/php.ini

Ik begon de PHP Warning: PHP Startup: Unable to load dynamic libraryMessage met betrekking tot dllniet laden. Ik heb opgenomen mysql(and i).dllin hetzelfde bestand, maar het bericht ging niet op totdat ik opmerkte “” in /opt/lampp/etc/php.ini.

Lijkt erop dat XAMPP wordt gelezen php.iniBestand van /etc/php/7.2/clien maakt wijziging in php.iniVAN /opt/lampp/etc. (; Extension = PHP_PDO_MYSQL.DLL NA “;” Herstartpache en geen enkele boodschap meer.


Antwoord 13, Autoriteit 2%

In mijn geval begon dit bericht te verschijnen toen ik de PHP-versie bijgewerkt tot 7.4.

Om het op te lossen moest ik zoeken naar de php.ini-bestanden in de php-versiemap (/etc/php/7.4/apache2/ && /etc/php/7.4/cli/) en controleer de regels waar de extensies Ik kon zien dat de extensies gd2 en intl geen commentaar hadden.


Antwoord 14

Ik ben een soortgelijke fout tegengekomen. De fout die ik maakte was om de naam “controller” te gebruiken als “Pagina’s” in plaats van “pagina’s” in mijn url.


Antwoord 15

In Windows kan het een verkeerd pad zijn in “Systeemomgevingsvariabelen”.
“Pad” naar de map php.exe moet de goede zijn.


Antwoord 16

Zoek naar de exacte extensie voor uw PHP-versie hier


Antwoord 17

Wat ik deed was;

1 – Ik kom er eerst achter welke versie van PHP ik gebruik via de functie phpinfo()

<?php   
    phpinfo();
?>

2 – Van daaruit vindt u de locatie van uw configuratiebestand (php.ini)

3 – Open dat bestand

4 – Geef commentaar op de regel die lijkt op de afbeelding hieronder

Dit kan een andere waarde zijn, maar deze moet gerelateerd zijn aan de extensie.
Ik ben geen expert, maar dit proces heeft me geholpen een soortgelijk probleem op te lossen.


Antwoord 18

‘C:/PHP/5.2.13/ext\php_mcrypt1.dll’

Ik zou zeggen dat er een typfout is op je php.ini (de extra 1). Misschien laad je een andere php.ini van wat je verwacht (zie de output van php.ini om te controleren).

anders dan dat zorgt ervoor dat PHP_MPRYPT.DLL en PHP:

waren gekoppeld aan dezelfde VC Runtime-bibliotheek (meestal MSVCRT.DLL voor VC6 of MSVCRT90.dll voor VC9) – gebruik b.v. de afhankelijkheidswandelaar hiervoor
Zijn beide debug-builds of beide release-builds
Beide hebben ZTS-ingeschakeld of ZTS uitgeschakeld
Voor bibliotheken die afhankelijk zijn van verdere bibliotheken (DLL’s), zorg er dan voor dat ze beschikbaar zijn (b.v. in dezelfde map als extensie)
PHP zou u moeten geven dat fouten zijn als een van de eerste drie voorwaarden hierboven niet is voldaan, maar ik schreef die hoe dan ook omdat ik niet zeker ben voor PHP 5.2.


Antwoord 19

Van c: \ xampp \ php \ php.exe ik kreeg

  • Kan geen dynamische bibliotheek inladen ”
  • C: \ XAMPP \ PHP \ EXT \ PHP_.DLL (de opgegeven module kan niet worden gevonden.)

Ik heb opgelost door commentaar te geven op
C: \ xampp \ php \ php.ini
; extensie =


Antwoord 20

Ik had een soortgelijk probleem en de balg is enkele van alle waarschuwingen / fouten.

Warning: PHP Startup: Unable to load dynamic library 'curl' (tried: C:\php\ext\curl 
(The specified module could not be found.), C:\php\ext\php_curl.dll (The specified 
module 
could not be found.)) in Unknown on line 0
Warning: PHP Startup: Unable to load dynamic library 'fileinfo' (tried: 
C:\php\ext\fileinfo (The specified module could not be found.), 
C:\php\ext\php_fileinfo.dll (The specified module could not be found.)) in Unknown on 
line 0

Als je de waarschuwingen doorneemt, zul je zien dat het zoekt naar php-extensies in de C:\php\ext\, dus ik heb php gedownload naar de C:\directory en dat loste de problemen op.

Other episodes