• Increase font size
  • Default font size
  • Decrease font size

Introducing Automap

Automap is a map-based PHP autoloader. As such, it is composed of two parts :

  • A builder program scans the PHP scripts composing your application, detects the symbols they define (classes, interfaces...), and registers them into a map file. Once it is done, the map file contains a list of every symbols defined in your scripts, and each symbol is associated with the file it is defined in. The map file is built only once (or when PHP scripts are modified and define a new class). It is built using the PHP interpreter in command line mode (text/shell/command mode).
    The map file is an integral part of the software and is distributed with the program scripts and the automap runtime.

  • At run time, the application's main script first includes the Automap runtime (the automap.phk file) and, then, loads one or several map files. From this point on, any reference to a symbol present in one of the loaded maps will trigger the autoloader and automatically load the appropriate PHP scripts.

:note Note: We talk about symbols, and not classes because, even if PHP currently supports class autoloading only, it can be extended in the future to autoload functions and constants too.

Benefits : Compared to path-based autoloaders, Automap :

  • is much faster,
  • removes the constraints on file and directory naming,
  • removes the limitation of one symbol per file,
  • provides an optional PECL extension. When using this extension, Automap is by far the fastest PHP autoloader available today.

This is just a short summary. You will find more information in the FAQ, or continue with a quick tutorial or the user's guide.

 

Releasing managelogs 2.2.1

This release mostly adds a logmanager API documentation which allows to use the library from any program.

Changelog:

  • Minor bugfixes
  • New Doxygen-generated API documentation
  • Better protection on logmanager functions against invalid parameters.
  • new examples of main programs calling the logmanager library
  • RPM build system now compatible with OpenSuse Build System (and generate precompiles binaries on OBS). Please note that This e-mail address is being protected from spambots. You need JavaScript enabled to view it to generate Debian packages on OBS.
 

Releasing managelogs 2.2.0

Main changes :

  • Bug fixes
  • Add log path feature
  • Better handling of relative paths (converted to absolute paths from the beginning).
  • Add 'seconds' in delay option value
  • Add new tests in check procedure
  • Add a 'valgrind' mode in self-tests (runs the tests through the memcheck wrapper)