Haunt (PHP-GTK Twitter client)
You can browse the source code at https://github.com/derickr/haunt or checkout the code with:
git clone git://github.com/derickr/haunt.git haunt
SRM: Script Running Machine
The Vulcan Logic Script Running Magic, SRM, was first conceived in the autumn of 2000. It is designed to solve some of the problems often encountered with PHP and other web scripting languages that result from the statelessness of the HTTP protocol. However, the idea was mostly ill contrived so the project has been suspended. This entry is for historical purposes.
SRM will use various methods to cope with the problems presented to programmers. It will offer caching of variables directly from supported scripting languages, and as they will be held in memory there will be considerable speed increases over a database-only approach.
Another feature of SRM will be it's ability to handle all database connections persistently; this will offer significant advantages in a variety of situations where you are either using multiple supported scripting languages or want to be able to control the amount of connections spawned to your database server in a more effective way. SRM does not spawn a connection to your database server for each connection but decides whether it is worth it or if it is better to share another connection.
Transliteration PHP Extension
This extension allows you to transliterate text in non-latin characters (such as Chinese, Cyrillic, Greek etc) to latin characters. Besides the transliteration the extension also contains filters to upper- and lowercase latin, cyrillic and greek, and perform special forms of transliteration such as converting ligatures such as the Norwegian "æ" to "ae" and normalizing punctuation and spacing.
At the moment the supported transliteration filters include: Cyrillic-to-Latin transliteration, Greek-to-Latin transliteration, Han-to-Latin transliteration, Hebrew-to-Latin transliteration; case converting filters for Greek, Latin and Cyrillic and filters to remove diacriticals from text, normalizing ligatures and normalizing punctuation.
ĀāĂăĄąĆćĈĉĊċČčĎďĐđĒēĔĕĖėĘęĚěĜĝĞğ 大平矿难死者增至66人 郑煤所属煤矿全停产
<?php $string = file_get_contents( 'test-text.utf8' ); $res = transliterate( $string, array( 'han_transliterate', 'diacritical_remove' ), 'utf-8', 'utf-8' ); echo $res; ?>
AaAaAaCcCcCcCcDdDdEeEeEeEeEeGgGg dapingkuangnansǐzhezengzhi66ren zhengmeisuǒshǔmeikuangquantingchǎn
Besides the transliterate() function, there is another function that returns all the available filters. This function is transliterate_filters_get(). It returns an array containing all filter names.
Simply run the pear installer tool to install the extension:
pear install http://pecl.php.net/get/translit
Vulcan Logic Dumper
The Vulcan Logic Dumper hooks into the Zend Engine and dumps all the opcodes (execution units) of a script. It can be used to see what is going on in the Zend Engine.
This is an extension for advanced users and can not be used to un-encode PHP code that has been encoded with any encoder. If you can't make it work then this tool is not for you. If you are certain there is a bug, then please provide a patch (or a good bug report).
New Features in 0.11
PHP 5.4 support.
New Features in 0.10
New options for formatting output as as CSV file (By Zoë Slattery)
Added a path finding algorithm. See here for an overview of this.
Added an option (vld.dump_paths) that dumps branch and paths when turned on.
Added two options (vld.save_dir and vld.save_paths) that allows you to dump path information has a graphviz .dot file.
TSRM fixes (by Wojciech Meler).
New Features in 0.9
PHP 5.2 / PHP 5.3 support.
Some extra verbosity options (check the source to figure out which).
New Features in 0.8
PHP 5.0 / PHP 5.1 support.
vld will only show opcodes if the setting vld.active is set to 1.
New Features in 0.6
Class methods info is only dumped if they contain some user defined functions.
Clean up the framework for better opcode display.
Print extended value for function calls (# of args in that case).
Op code elements are only printed when they are actually used.
Download and Installation Instructions
The extension is not finished (and probably will never be finished). If you have questions, feel free to send me an e-mail.
You can get the source from SVN:
svn co svn://svn.xdebug.org/svn/php/vld/trunk vld
Here are the instructions to get it to work:
cd into the newly checked-out directory.
Create the configure script: phpize
Now run "./configure" followed by "make install".
That's it, if you now run PHP from the command line and add the -dvld.active=1 parameter VLD will spit out the opcodes:
php -dvld.active=1 program.php
There is also a setting vld.execute to disable execution of code, and vld.verbosity to control how much output VLD generates.
Xdebug Extension for PHP
The Xdebug extension helps you debugging your script by providing a lot of valuable debug information. The debug information that Xdebug can provide includes the following:
full parameter display for user defined functions
function name, file name and line indications
support for member functions
protection for infinite recursions
Xdebug also provides:
profiling information for PHP scripts
capabilities to debug your scripts interactively with a debug client
Information about Xdebug in more detail is available at http://xdebug.org.