Skip to content

sensorario/php-sdl

 
 

Repository files navigation

Build and test

PHP-SDL

SDL (Simple DirectMedia Layer) bindings for the PHP language. The extension allows you to create multimedia desktop applications with windows, input handling, events, and more.

Installation

Requirements

  • C compiler
  • Automake tools
  • PHP8.1 devel
  • libSDL2 devel libraries and headers
  • UN*X OS (eg Linux, Macos)

Via PECL

pecl install sdl-beta

Then add

extension=sdl.so

to your php.ini file.

Documentation

The SDL extension mimics in almost every single aspect to the official C library, so until we write our own documentation, refer to the C counterpart.

Examples

Standard SDL2 API is available in procedural style:

$window = SDL_CreateWindow( "Foo window", 500, 50, 350, 300, SDL_WINDOW_SHOWN+SDL_WINDOW_RESIZABLE);
SDL_SetWindowTitle($window, "Some new title");
SDL_DestroyWindow($window);

And is also available in object oriented style:

$window = new SDL_Window( "Foo window", 100, 50, 350, 300, SDL_Window::SHOWN|SDL_Window::RESIZABLE);
$window->SetTitle("Some new title");
unset($window); // will destroy the window

Complete examples can be found in the examples folder.

Related projects

Projects using the extension

Building

To compile your new extension, you will have to execute the following steps:

phpize
./configure [--with--sdl] 
make
make test
sudo make install

About

SDL2 bindings for the PHP language

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 90.5%
  • PHP 8.7%
  • Other 0.8%