<?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>Wed, 23 May 2012 05:29:35 -0500</pubDate>
    <ttl>30</ttl>
    <item>
      <title><![CDATA[Anthony Ferrara's Blog: On PSR-0 Being Included In PHP's Core]]></title>
      <guid>http://www.phpdeveloper.org/news/17084</guid>
      <link>http://www.phpdeveloper.org/news/17084</link>
      <description><![CDATA[<p>
In a new post to his blog today <i>Anthony Ferrara</i> looks at the (heated) discussion that's popped up around having the PSR-0 autoloader standard included as a part of the PHP core. He <a href="http://blog.ircmaxell.com/2011/11/on-psr-0-being-included-in-phps-core.html">gives his reasons</a> (three of them) why he's not for the decision.
</p>
<blockquote>
Recently there has been a rather heated and intense discussion on whether the <a href="https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-0.md">PSR-0 autoloader "standard"</a> should be included as part of the <a href="https://wiki.php.net/rfc/splclassloader">PHP core (in ext/spl to be exact)</a>. I've tried to stay out of the discussion and have successfully done so. Until today. I feel that there's something that's been missing to the discussion. So rather then posting this to the internals list, I feel it's better served by a blog post on the subject. So here's my take on it.
</blockquote>
<p>
As mentioned, he's not in favor of the inclusion for three different reasons:
</p>
<ul>
<li>It's inconsistent with current PHP functionality and would bias development one way or another
<li>It's not an actual standard, just a loosely defined practice based on functionality already in place
<li>There's noting for core to gain by adopting it and could cause problems trying to make things fit a one-size-fits-all solution.
</ul>]]></description>
      <pubDate>Fri, 04 Nov 2011 08:34:50 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[DZone.com: Debate - How to Interface the PHP World]]></title>
      <guid>http://www.phpdeveloper.org/news/17042</guid>
      <link>http://www.phpdeveloper.org/news/17042</link>
      <description><![CDATA[<p>
In a new post to DZone.com today <i>Mitchell Pronschinske</i> <a href="http://php.dzone.com/news/debate-how-interface-php-world">responds to some comments</a> that were <a href="http://pooteeweet.org/blog/0/2008#m2008">made by Lukas Smith</a> about working with interfaces in PHP and what he sees as an ideal "drop in" solution.
</p>
<blockquote>
The PHP community was reacting to Lukas Smith's "Interfacing the PHP world" for most of last weekend. [...] It's a pretty major propositon to start 'interfacing the PHP' world.  Catch up on the conversation and let us know what you think.
</blockquote>
<p>
<i>Mitchell</i> summarizes <i>Lukas'</i> thoughts into three points - interfaces in separate repositories, PHP frameworks not adopting 5.3 yet and the customization of method names/naming conventions across frameworks and tools. Another response to <i>Lukas</i> came from <a href="http://www.hermanradtke.com/blog/please-do-not-interface-the-php-world/">Herman Radtke</a> with <i>Lukas</i> following up his original post with <a href="http://pooteeweet.org/blog/2014">"Why Bother?"</a>
</p>]]></description>
      <pubDate>Wed, 26 Oct 2011 08:33:53 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Web Builder Zone: What we don't need in object-oriented programming]]></title>
      <guid>http://www.phpdeveloper.org/news/15223</guid>
      <link>http://www.phpdeveloper.org/news/15223</link>
      <description><![CDATA[<p>
On the Web Builder Zone, <i>Giorgio Sironi</i> <a href="http://css.dzone.com/articles/what-we-dont-need-object">has a few suggestions</a> about things that aren't really needed in object-oriented development but seem to have found their way in none the less (most of them are in PHP too).
</p>
<blockquote>
It is in general true that you should strive for writing code as simple as possible (in length but in complexity too) to obtain an end result specified by a requirement or a user story. If there are two designs for a feature, almost always we would choose the simplest. This article takes a broader view on object-oriented programming, and ask the following question: What are the constructs we don't need in an object-oriented language? What we can take away without hampering our capabilities of building software?
</blockquote>
<p>
He has a whole list of things that he thinks could be removed - "extra features" that wouldn't cause heartache if dropped including:
</p>
<ul>
<li>instanceof
<li>break/continue
<li>protected subclassing scope
<li>if (conditional)
<li>switch (conditional chain)
<li>public (for fields)
</ul>]]></description>
      <pubDate>Mon, 04 Oct 2010 10:53:08 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Zend Developer Zone: Trait-like Functionality for PHP]]></title>
      <guid>http://www.phpdeveloper.org/news/14311</guid>
      <link>http://www.phpdeveloper.org/news/14311</link>
      <description><![CDATA[<p>
In a new tutorial posted on the Zend Developer Zone today <i>Steve Hollis</i> looks at something several PHP developers have said they want to seen in the language - traits - and how, until then, you can <a href="http://devzone.zend.com/article/12014-Trait-like-Functionality-for-PHP">use traits now</a> (well, sort of).
</p>
<blockquote>
So why do we need traits, anyway? PHP is a single inheritance language, meaning that each class can only extend one other. This allows us to build logical class hierarchies which extend functionality in a "vertical" way. [...] What we need is a means of re-using code other than simple inheritance. That's where traits come in. Traits are classes containing a collection of methods, usually relating to a particular behaviour. 
</blockquote>
<p>
He shares a way that you can mimic some of the functionality that traits would give you (full code is <a href="http://www.stevehollis.com/wp-content/uploads/2010/04/traits.zip">available here</a>) with an abstract trait class, reflection and a "superclass" that's extended to pass off the requests to the correct child object.
</p>]]></description>
      <pubDate>Wed, 07 Apr 2010 10:05:52 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Symfony Blog: Updates to the Plugin Website/Resources]]></title>
      <guid>http://www.phpdeveloper.org/news/10800</guid>
      <link>http://www.phpdeveloper.org/news/10800</link>
      <description><![CDATA[<p>
Two <a href="http://feeds.feedburner.com/~r/symfony/blog/~3/358674341/some-news-on-the-new-plugin-system">new</a> <a href="http://feeds.feedburner.com/~r/symfony/blog/~3/360924780/new-features-for-the-plugin-system">posts</a> on the Symfony blog talk about improvements to the framework's plugin system (as found in recent releases).
</p>
<blockquote>
A week after the release of the new plugin system, a lot of activity has taken place. More than 30 plugins were created, and 51 new releases were published on 27 different plugins. Based on the feedback I have received from the community, I have made some tweaks to the system.
</blockquote>
<p>
These tweaks include a newly designed <a href="http://www.symfony-project.org/plugins/">homepage</a>, the inclusion of RSS feeds and a special URL to view the older wiki documentation for some plugins.
</p>
<p>
The <a href="http://feeds.feedburner.com/~r/symfony/blog/~3/360924780/new-features-for-the-plugin-system">second post</a> describes more enhancements based on other feedback (on the <a href="http://feeds.feedburner.com/~r/symfony/blog/~3/358674341/some-news-on-the-new-plugin-system">previous post</a>). Updates based on this information include an new "overview" field to describe the plugin, a download of the Markdown syntax to make the documentation conversion easier and a "stric mode" validation if you upload a PEAR package.
</p>]]></description>
      <pubDate>Mon, 11 Aug 2008 08:45:08 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Alan Knowles' Blog: Licence to release PHP code?]]></title>
      <guid>http://www.phpdeveloper.org/news/9878</guid>
      <link>http://www.phpdeveloper.org/news/9878</link>
      <description><![CDATA[<p>
A little while back, <i>Alan Knowles</i> <a href="http://www.akbkhome.com/blog.php/View/159/Licence_to_release_PHP_code.html">wondered something</a> that I'm sure has crosses the mind of every PHP developer out there, especially when they came across a particularly bad chunk of code - some people should need to apply for a license before releasing their PHP code out into the wild.
</p> 
<blockquote>
Unlike most of the reviews you get, I was specifically looking at code quality [of the CMSs]. not fuzzy does it look nice!
</blockquote>
<p>
He looks at a whole list of them including: Tanslucis, Siteman, Pivot, jaf-cms, Guppy, Doop and CutePHP. Unfortunately, most of the news is bad - between badly structured code and mixes of HTML and PHP, there was almost nothing good in any of them.
</p>]]></description>
      <pubDate>Fri, 28 Mar 2008 11:10:37 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Stubbles Blog: Traits for PHP]]></title>
      <guid>http://www.phpdeveloper.org/news/9669</guid>
      <link>http://www.phpdeveloper.org/news/9669</link>
      <description><![CDATA[<p>
On the Stubbles blog, <i>Frank Kleine</i> has <a href="http://www.stubbles.org/archives/42-Traits-for-PHP.html">pointed out</a> a <a href="http://news.php.net/php.internals/35562">proposal</a> from <i>Stefan Marr</i> to include functionality for traits in PHP.
</p>
<blockquote>
As a language construct within PHP it would be very easy to do the same, but easier to learn and to use. Beside some keyword issues (the RFC uses "use" as keyword, but this will of course conflict with <a href="http://php.net/manual/en/language.namespaces.using.php">namespaces</a>) I'm wondering what this will have an impact on reflection - the RFC stays unclear about this. 
</blockquote>
<p>
A trait is a free-floating chink of functionality that, instead of being confined to a class (or file) that has to be called on to use it, exists where the developer can use it from anywhere at any time. This helps solve some of the issues with single inheritance in PHP.
</p>]]></description>
      <pubDate>Wed, 20 Feb 2008 11:17:00 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[CodeIgniter.com: CodeIgniter 1.6 Hits the Streets]]></title>
      <guid>http://www.phpdeveloper.org/news/9534</guid>
      <link>http://www.phpdeveloper.org/news/9534</link>
      <description><![CDATA[<p>
The latest version of the <a href="http://www.codeigniter.com">CodeIgniter</a> framework has officially been released - version 1.6:
</p>
<blockquote>
EllisLab is proud to announce the release of CodeIgniter 1.6, our open source web application framework.  The release marks a new turn in the development of the framework, and has received considerable attention from both EllisLab developers and the community.
</blockquote>
<p>
There's lots of new features in <a href="http://codeigniter.com/downloads/">this new release</a> including a Database Forge class, improvements to their Active Record implementation, an extendable Model class, and the addition of extendable Helpers.
</p>
<p>
You can find out more about the framework on <a href="http://codeigniter.com">the project's homepage</a> or just head straight to the <a href="http://codeigniter.com/downloads/">downloads section</a> and grab the latest updates.
</p>
]]></description>
      <pubDate>Thu, 31 Jan 2008 07:59:00 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[PHPWACT.org: Handling UTF-8 with PHP]]></title>
      <guid>http://www.phpdeveloper.org/news/9483</guid>
      <link>http://www.phpdeveloper.org/news/9483</link>
      <description><![CDATA[<p>
<i>Ed Finkler</i> has pointed out a handy resource for those trying to cope with using the UTF-8 support included in several of PHP's functions - <a href="http://www.phpwact.org/php/i18n/utf-8">this page</a> on the Web Application Component Toolkit wiki.
</p>
<blockquote>
This page is intended as a reference for functionality PHP provides which can either help with handling UTF-8 or should be regarded as a risk when used in conjunction with UTF-8 encoded strings. Further information can be found on the <a href="http://www.phpwact.org/php/i18n">Internationalization (I18N)</a> and <a href="http://www.phpwact.org/php/i18n/charsets">Character Sets / Character Encoding Issues</a> pages.
</blockquote>
<p>
It talks about the "dangerous" functionality PHP has (issues that the language has in current functions) when using things like the PCRE extension, the string extension, the array methods, handling variables, the XML extensions (DOM and SAX), image manipulation, and URL parsing functionality.
</p>]]></description>
      <pubDate>Thu, 24 Jan 2008 07:51:00 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Padraic Brady's Blog: Ruby Testing Tools Missing From PHP]]></title>
      <guid>http://www.phpdeveloper.org/news/9131</guid>
      <link>http://www.phpdeveloper.org/news/9131</link>
      <description><![CDATA[<p>
In <a href="http://blog.astrumfutura.com/archives/321-Ruby-Testing-Tools-Missing-From-PHP.html">this post</a> from <i>Padraic Brady</i>, he compares some of the tools that are available to Ruby developers to some of their counterparts (if they exist) in PHP.
</p>
<blockquote>
Anyways, here's the pitch. I've been using Ruby for a year now and my pet peeves with PHP started getting a bit too much to comfortably endure. [...] I don't like developing web applications with Ruby, or that thing Rails. Whatever it is. It's a framework, right? So I'm on a splurge of writing PHP tools for the same things in cahoots with folk like Travis Swicegood.
</blockquote>
<p>
Tools he mentions include Autotest, Mutation testing, Mocha, Rspec, Heckle and some of their PHP counterparts like parts in PHPUnit and the DomDocument functionality.
</p>]]></description>
      <pubDate>Wed, 28 Nov 2007 08:48:00 -0600</pubDate>
    </item>
  </channel>
</rss>

