<?xml version="1.0"?>
<rss version="2.0">
  <channel>
    <title>PHPDeveloper.org</title>
    <link>http://www.phpdeveloper.org</link>
    <description>Up-to-the Minute PHP News, views and community</description>
    <language>en-us</language>
    <pubDate>Tue, 08 Jul 2008 22:53:33 -0500</pubDate>
    <ttl>30</ttl>
    <item>
      <title><![CDATA[PHP-GTK Community Site: Enabling code completion for PHP-GTK in your PHP IDE]]></title>
      <guid>http://www.phpdeveloper.org/news/10390</guid>
      <link>http://www.phpdeveloper.org/news/10390</link>
      <description><![CDATA[<p>
The PHP-GTK Community Site has <a href="http://php-gtk.eu/enabling-code-completion-for-phpgtk-in-your-php-ide">posted some information</a> (and some files) to help make your editor of choice a bit more "PHP-GTK aware" when it comes to code completion.
</p>
<blockquote>
These IDEs are able to provide code completion not only for prebuilt extension code, but also for user-level PHP code. This gives us a way to provide it to PHP-GTK developers : all it takes is a "stub" file containing PHP declarations equivalent to the PHP-GTK2 classes, interfaces, and their methods and constants.
</blockquote>
<p>
Making it by hand would be slow (and not efficient at all) so they opted to let the <a href="http://www.php.net/manual/en/language.oop5.reflection.php#language.oop5.reflection.reflector">Reflection</a> API do the heavy lifting for them and generate a Gtk_Dumper output file to hand to your editor and let it parse. The file is <a href="http://php-gtk.eu/sites/php-gtk.eu/files/Gtk_Dumper.php.txt">available for download</a>.
</p>]]></description>
      <pubDate>Wed, 11 Jun 2008 12:04:59 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Tobias Schlitt's Blog: Reflecting private properties]]></title>
      <guid>http://www.phpdeveloper.org/news/9645</guid>
      <link>http://www.phpdeveloper.org/news/9645</link>
      <description><![CDATA[<p>
<i>Tobias Schlitt</i> has <a href="http://schlitt.info/applications/blog/index.php?/archives/581-Reflecting-private-properties.html">posted a handy tip</a> about using the Reflection API in PHP5 - specifically its accessing of private properties in a class.
</p>
<blockquote>
I recently stumbled over reflecting private properties in PHP again. As you might know, this was not possible until now and if you tried this [code] PHP thanked it to you with this [error that is cannot access a non-public member].
</blockquote>
<p>
He notes that, while the <a href="http://schlitt.info/applications/blog/index.php?/archives/581-Reflecting-private-properties.html">behaviour is correct</a>, it still makes things like <a href="http://schlitt.info/applications/blog/exit.php?url_id=4456&entry_id=581">metaprogramming</a> impossible. So, what's a developer to do? Patch it of course! <i>Tobias</i> and <i>Derick Rethans</i> persuaded two other developers  (<i>Derick</i> and <i>Marcus Borger</i>) to include a patch that allows the Reflection API to see these private variables.
</p>
<p>
To make it work, you have to use the setAccessible method on the Reflection object to set which of the properties you want to be able to get at.
</p>]]></description>
      <pubDate>Fri, 15 Feb 2008 12:02:00 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Stubbles Blog: Do not trust the reflection API]]></title>
      <guid>http://www.phpdeveloper.org/news/9507</guid>
      <link>http://www.phpdeveloper.org/news/9507</link>
      <description><![CDATA[<p>
On the Stubbles blog, <i>Frank Kleine</i> <a href="http://www.stubbles.org/archives/40-Do-not-trust-the-reflection-API.html">offers some advice</a> to developers looking to use the Reflection API - "don't trust it".
</p>
<blockquote>
If you try to get informations about parameters from methods of internal classes - forget that. Examining several internal classes my key findings are: either there is no information about parameters available and the reflection API says the method does not have any parameters, or the information about the parameter is wrong.
</blockquote>
<p>
He <a href="http://www.stubbles.org/archives/40-Do-not-trust-the-reflection-API.html">includes code examples</a> along side the output from the script to illustrate his point. 
</p>]]></description>
      <pubDate>Mon, 28 Jan 2008 13:07:00 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Stubbles Blog: Stubbles 0.1.0 released]]></title>
      <guid>http://www.phpdeveloper.org/news/7735</guid>
      <link>http://www.phpdeveloper.org/news/7735</link>
      <description><![CDATA[<p>
The Stubbles framework team has <a href="http://www.stubbles.org/archives/17-Stubbles-0.1.0-released.html">released the latest version</a> of their framework today - Stubbles 0.1.0:
</p>
<blockquote>
The Stubbles team is proud to announce the release of Stubbles 0.1.0. This release is a first alpha version and contains the basic features of Stubbles like the <a href="http://stubbles.net/wiki/Docs/Reflection">Extended Reflection API</a>, XML handling with <a href="http://stubbles.net/wiki/Docs/XMLStreamWriter">XMLStreamWriter</a> and <a href="http://stubbles.net/wiki/Docs/XMLSerializer">XMLSerializer</a>, <a href="http://stubbles.net/wiki/Docs/Logging">Logging</a>, <a href="http://stubbles.net/wiki/Docs/EventHandling">Event handling</a>, <a href="http://stubbles.net/wiki/Docs/Validators">support for filtering and validating user input</a> and <a href="http://stubbles.net/wiki/Docs/Session">session handling</a>. The release additionally contains parts of packages that we announced to be in the next milestone 0.2.0. 
</blockquote>
<p>
The <a href="http://stubbles.net/">Stubbles framework</a> is one that seeks to "combine your favorite features from other programming languages and frameworks" and is flexible enough to allow for easy interfacing with other frameworks/components like <a href="http://pear.php.net">PEAR</a> or the <a href="http://framework.zend.com">Zend Framework</a>.
</p>]]></description>
      <pubDate>Mon, 30 Apr 2007 13:07:00 -0500</pubDate>
    </item>
  </channel>
</rss>
