This extension is a generic extension API to DLLs. This was originally written to allow access to the Win32 API from PHP, although you can also access other functions exported via other DLLs.
Currently supported types are generic PHP types (strings, booleans, floats, integers and nulls) and types you define with w32api_deftype().
Notă: Această extensie a fost transferată în repozitoriul » PECL şi nu mai este furnizată împreună cu PHP începând cu versiunea 5.1.0.
Această extensie este EXPERIMENTALĂ. Comportamentul acestei extensii -- inclusiv denumirile funcţiilor sale şi orice alte aspecte documentate în privinţa acestei extensii -- pot să fie modificate fără preaviz într-o versiune viitoare a PHP. Utilizaţi această extensie la propriul risc.
This extension will only work on Windows systems.
Nu este necesar de a instala ceva suplimentar pentru a utiliza aceste funcţii; ele fac parte din nucleul PHP.
Această extensie nu are directive de configurare definite în php.ini.
This extension defines one resource type, used for user defined types. The name of this resource is "dynaparm".
Constantele de mai jos sunt definite de această extensie şi vor fi disponibile doar dacă această extensie a fost compilată în interiorul PHP, sau a fost încărcată dinamic în timpul rulării.
This example gets the amount of time the system has been running and displays it in a message box.
Example#1 Get the uptime and display it in a message box
<?php
// Define constants needed, taken from
// Visual Studio/Tools/Winapi/WIN32API.txt
define("MB_OK", 0);
// Load the extension in
dl("php_w32api.dll");
// Register the GetTickCount function from kernel32.dll
w32api_register_function("kernel32.dll",
"GetTickCount",
"long");
// Register the MessageBoxA function from User32.dll
w32api_register_function("User32.dll",
"MessageBoxA",
"long");
// Get uptime information
$ticks = GetTickCount();
// Convert it to a nicely displayable text
$secs = floor($ticks / 1000);
$mins = floor($secs / 60);
$hours = floor($mins / 60);
$str = sprintf("You have been using your computer for:" .
"\r\n %d Milliseconds, or \r\n %d Seconds" .
"or \r\n %d mins or\r\n %d hours %d mins.",
$ticks,
$secs,
$mins,
$hours,
$mins - ($hours*60));
// Display a message box with only an OK button and the uptime text
MessageBoxA(NULL,
$str,
"Uptime Information",
MB_OK);
?>