GTK+ използва многобройни константи. В PHP-GTK 1 те се дефинираха като глобални и можеха да бъдат използвани чрез
echo GTK_WIN_POS_CENTER; |
PHP Notice: Use of undefined constant GTK_WIN_POS_CENTER - assumed 'GTK_WIN_POS_CENTER' in /path/to/file.php on line 23 |
Проблемът, е че първоначалната стойност използвана от (GTK_WIN_POS_CENTER връща стойност 1 в PHP-GTK 1). PHP-GTK 2 вижда само текста "GTK_WIN_POS_CENTER"и това ще доведе до грешка във вашият код.
Статичните клас константи се поддържат в PHP 5 и така се изчиства кодът. Дефинирането им става в класове на Gtk, Gdk и други.
Накратко казано, единстевеното нещо което трябва да направите (в повечето случаи) е да замените долното подчертаване с двуеточие, така че: GTK_WIN_POS_CENTER при PHP-GTK 1 да стане Gtk::WIN_POS_CENTER при PHP-GTK 2.
Забележете също и новият стил на писане на код. Главни букви трябва да си използват само за първите букви в Gtk, Gdk, Pango и Atk константите при официалната дистрибуция на документацията и кода на PHP-GTK 2 с което се променя техният статус на константи на класа, а не като глобални такива.