dl(): Skillnad mellan sidversioner
Hoppa till navigering
Hoppa till sök
Admin (diskussion | bidrag) (Skapade sidan med '= Sidslut = Orginalhemsidan på Engelska :https://www.php.net/manual/en/function.dl.php PHP Funktioner Funktionsreferens <HR> Det här är en maskinöversättning av PHP-manualen till svenska. Om du hittar fel är vi tacksamma om du rapporterar dem via formuläret som finns på https://www.linux.se/kontaka-linux-se/ <BR><BR>Tack till [https://datorhjalp.se Datorhjälp och Datorservice] som har sponsrat [https://www.linux.se Linux.se] med webserver. K...') |
Admin (diskussion | bidrag) Ingen redigeringssammanfattning |
||
Rad 1: | Rad 1: | ||
== dl == | |||
'''PHP Versioner:''' PHP 4, PHP 5, PHP 7, PHP 8 | |||
=== Beskrivning === | |||
`dl` laddar en PHP-tilläggsmodul vid körning (runtime). Detta gör det möjligt att dynamiskt lägga till funktionalitet i PHP-skript utan att behöva starta om servern eller ändra `php.ini`. Funktionen är endast tillgänglig för CLI och inbäddade SAPIs, samt för CGI SAPI när den körs från kommandoraden. | |||
=== Syntax === | |||
<pre> | |||
bool dl ( string $extension_filename ) | |||
</pre> | |||
=== Parametrar === | |||
* '''$extension_filename''' | |||
Filnamnet på tillägget som ska laddas. Filnamnets format varierar beroende på operativsystem: | |||
** Unix/Linux: ** Till exempel `sockets.so` | |||
** Windows: ** Till exempel `php_sockets.dll` | |||
'''Notera:''' Tillägget måste vara en delad modul (shared module) och inte inbyggd i PHP. | |||
'''Sökväg till tilläggsfiler:''' | |||
* '''Windows:''' Om det inte är angivet i `php.ini`, laddas tillägget från `C:\php5\` som standard. | |||
* '''Unix/Linux:''' Om det inte är angivet i `php.ini` beror standardkatalogen för tillägg på: | |||
* Om PHP har byggts med `--enable-debug` | |||
* Om PHP har byggts med ZTS (Zend Thread Safety) stöd | |||
* ZEND_MODULE_API_NO (Zend internal module API nummer), vilket baseras på datumet då en större förändring av modul-API:t skedde, t.ex. `20010901` | |||
Med dessa inställningar hamnar katalogen i `<install-dir>/lib/php/extensions/<debug-or-not>-<zts-or-not>-ZEND_MODULE_API_NO`, t.ex. `/usr/local/php/lib/php/extensions/debug-non-zts-20010901` eller `/usr/local/php/lib/php/extensions/no-debug-zts-20010901`. | |||
=== Returvärden === | |||
* '''true''' | |||
Vid lyckad laddning av tillägget. | |||
* '''false''' | |||
Vid misslyckad laddning. Om funktionen inte är tillgänglig eller inaktiverad (via `enable_dl` satt till `off` i `php.ini`), genereras ett `E_ERROR` och exekveringen stoppas. Vid misslyckad laddning av tillägget genereras också ett `E_WARNING` utöver att `false` returneras. | |||
=== Exempel === | |||
==== Exempel #1: Ladda ett tillägg baserat på operativsystem ==== | |||
<pre> | |||
<?php | |||
// Kontrollerar om 'sqlite' tillägget redan är laddat | |||
if (!extension_loaded('sqlite')) { | |||
if (strtoupper(substr(PHP_OS, 0, 3)) === 'WIN') { | |||
dl('php_sqlite.dll'); | |||
} else { | |||
dl('sqlite.so'); | |||
} | |||
} | |||
// Eller använda PHP_SHLIB_SUFFIX konstanten | |||
if (!extension_loaded('sqlite')) { | |||
$prefix = (PHP_SHLIB_SUFFIX === 'dll') ? 'php_' : ''; | |||
dl($prefix . 'sqlite.' . PHP_SHLIB_SUFFIX); | |||
} | |||
?> | |||
</pre> | |||
'''Förväntad utdata:''' | |||
* Om tillägget laddas framgångsrikt kan du använda de funktioner som tillägget erbjuder. | |||
* Vid misslyckad laddning visas varningsmeddelanden. | |||
=== Noteringar === | |||
* `dl()` är skiftlägeskänslig på Unix-plattformar. | |||
* Funktionen är begränsad till vissa SAPIs (CLI och embedded SAPI) och kan vara inaktiverad av säkerhetsskäl i `php.ini`. | |||
=== Relaterade Funktioner === | |||
* [[extension_loaded]] - Kontrollerar om ett tillägg är laddat. | |||
[[Kategori:PHP Funktioner]] | |||
[[Kategori:Tilläggshantering]] | |||
[[Kategori:Systemfunktioner]] | |||
= Sidslut = | = Sidslut = | ||
Orginalhemsidan på Engelska :https://www.php.net/manual/en/function.dl.php | Orginalhemsidan på Engelska :https://www.php.net/manual/en/function.dl.php | ||
Versionen från 13 oktober 2024 kl. 06.47
dl
PHP Versioner: PHP 4, PHP 5, PHP 7, PHP 8
Beskrivning
`dl` laddar en PHP-tilläggsmodul vid körning (runtime). Detta gör det möjligt att dynamiskt lägga till funktionalitet i PHP-skript utan att behöva starta om servern eller ändra `php.ini`. Funktionen är endast tillgänglig för CLI och inbäddade SAPIs, samt för CGI SAPI när den körs från kommandoraden.
Syntax
bool dl ( string $extension_filename )
Parametrar
- $extension_filename
Filnamnet på tillägget som ska laddas. Filnamnets format varierar beroende på operativsystem: ** Unix/Linux: ** Till exempel `sockets.so` ** Windows: ** Till exempel `php_sockets.dll` Notera: Tillägget måste vara en delad modul (shared module) och inte inbyggd i PHP.
Sökväg till tilläggsfiler: * Windows: Om det inte är angivet i `php.ini`, laddas tillägget från `C:\php5\` som standard. * Unix/Linux: Om det inte är angivet i `php.ini` beror standardkatalogen för tillägg på: * Om PHP har byggts med `--enable-debug` * Om PHP har byggts med ZTS (Zend Thread Safety) stöd * ZEND_MODULE_API_NO (Zend internal module API nummer), vilket baseras på datumet då en större förändring av modul-API:t skedde, t.ex. `20010901` Med dessa inställningar hamnar katalogen i `<install-dir>/lib/php/extensions/<debug-or-not>-<zts-or-not>-ZEND_MODULE_API_NO`, t.ex. `/usr/local/php/lib/php/extensions/debug-non-zts-20010901` eller `/usr/local/php/lib/php/extensions/no-debug-zts-20010901`.
Returvärden
- true
Vid lyckad laddning av tillägget.
- false
Vid misslyckad laddning. Om funktionen inte är tillgänglig eller inaktiverad (via `enable_dl` satt till `off` i `php.ini`), genereras ett `E_ERROR` och exekveringen stoppas. Vid misslyckad laddning av tillägget genereras också ett `E_WARNING` utöver att `false` returneras.
Exempel
Exempel #1: Ladda ett tillägg baserat på operativsystem
<?php // Kontrollerar om 'sqlite' tillägget redan är laddat if (!extension_loaded('sqlite')) { if (strtoupper(substr(PHP_OS, 0, 3)) === 'WIN') { dl('php_sqlite.dll'); } else { dl('sqlite.so'); } } // Eller använda PHP_SHLIB_SUFFIX konstanten if (!extension_loaded('sqlite')) { $prefix = (PHP_SHLIB_SUFFIX === 'dll') ? 'php_' : ''; dl($prefix . 'sqlite.' . PHP_SHLIB_SUFFIX); } ?>
Förväntad utdata:
- Om tillägget laddas framgångsrikt kan du använda de funktioner som tillägget erbjuder.
- Vid misslyckad laddning visas varningsmeddelanden.
Noteringar
- `dl()` är skiftlägeskänslig på Unix-plattformar.
- Funktionen är begränsad till vissa SAPIs (CLI och embedded SAPI) och kan vara inaktiverad av säkerhetsskäl i `php.ini`.
Relaterade Funktioner
- extension_loaded - Kontrollerar om ett tillägg är laddat.
Sidslut
Orginalhemsidan på Engelska :https://www.php.net/manual/en/function.dl.php
PHP Funktioner Funktionsreferens
Det här är en maskinöversättning av PHP-manualen till svenska. Om du hittar fel är vi tacksamma om du rapporterar dem via formuläret som finns på
https://www.linux.se/kontaka-linux-se/
Tack till Datorhjälp och Datorservice som har sponsrat Linux.se med webserver.