<?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>Thu, 23 May 2013 15:52:02 -0500</pubDate>
    <ttl>30</ttl>
    <item>
      <title><![CDATA[KnpLabs Blog: Composer Level2: 5 more things like Class Maps, Forking, & Scripts]]></title>
      <guid>http://www.phpdeveloper.org/news/18715</guid>
      <link>http://www.phpdeveloper.org/news/18715</link>
      <description><![CDATA[<p>
On the KnpLabs blog there's a new post from <i>Ryan Weaver</i> sharing some cool <a href="http://knplabs.com/blog/composer-level-up">things you can do with Composer</a> you might not have known about when managing your application's dependencies.
</p>
<blockquote>
For those of you that are comfortable with Composer, I wanted to talk about a few lesser-known, but really fantastic features. These are inspired by real questions I've heard while running around the country doing my one-man composer-and-dancing show (i.e. conference talks).
</blockquote>
<p>
He shares four of them with a fifth that's more of an "upcoming feature" than a current one:
</p>
<ul>
<li>Autoloading & Performance: "I thought class maps were the fastest?"
<li>Running Post-Deploy Scripts
<li>"What if I need to fork a library?"
<li>Can I host private packages on Packagist?
<li>What about signing the authenticity of Packages?
</ul>
<p>
That last one about package signing is still on the <a href="https://github.com/composer/composer/issues/38">known issues list</a> and is under discussion, but no doubt that future versions of the tool will support it.
</p>]]></description>
      <pubDate>Thu, 08 Nov 2012 09:17:14 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Robert Basic's Blog: Using the new autoloaders from Zend Framework 1.12]]></title>
      <guid>http://www.phpdeveloper.org/news/18126</guid>
      <link>http://www.phpdeveloper.org/news/18126</link>
      <description><![CDATA[<p>
<i>Robert Basic</i> has a new post today about the <a href="http://robertbasic.com/blog/using-the-new-autoloaders-from-zend-framework-1-12">autoloaders in Zend Framework 1.12</a> and how to use them to create a classmap for use in your application.
</p>
<blockquote>
The latest, and last, release of the Zend Framework 1.x series is just around the corner as <a href="http://zend-framework-community.634137.n4.nabble.com/Zend-Framework-1-12-0RC1-Released-td4655323.html">ZF 1.12.0RC1 was announced this week</a>. As I still have projects running ZF1 I thought about giving the most interesting new feature (for me) a spin - the new autoloaders which are backported from ZF2. I decided using the classmap autoloader as the main autoloader, and the good ol' standard autoloader as the fallback autoloader. 
</blockquote>
<p>
He includes the changes to the Front Controller (index.php) to have it know about these new autoloaders and has a command that will go through your code any pull out any <a href="http://php.net/require_once">require_once</a> statements out and let the autoloader handle it instead.
</p>]]></description>
      <pubDate>Fri, 22 Jun 2012 08:17:05 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Rob Allen's Blog: Using ZendLoaderAutoloader]]></title>
      <guid>http://www.phpdeveloper.org/news/17531</guid>
      <link>http://www.phpdeveloper.org/news/17531</link>
      <description><![CDATA[<p>
In a new post to his blog <i>Rob Allen</i> introduces you to the autoloader that comes with the Zend Framework 2 and shows <a href="http://akrabat.com/zend-framework-2/using-zendloaderautoloader/">how to use it</a> to load your own classes.
</p>
<blockquote>
Autoloading is the process in PHP whereby the system attempts to load a class when it is first encountered (via new or via class_exists) if it hasn't already been loaded via a require or include. Autoload works by looking for a method called __autoload or walking through any method registered with spl_autoload_register. Zend Framework 2 provides the ZendLoaderAutoloader component for autoloading of Zend Framework and your own classes.
</blockquote>
<p>
The <a href="https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-0.md">PSR-0</a>-standard tool allows you to load files, set up class mapping and allows for multiple autoloading methods to work side-by-side. He shows how to use the standard autoloading functionality to define paths to locate files (with prefixes and namespaces) in both a constructor-based setup and a more programatic approach. He also shows how to use the ClassMapAutoloader to load from a mapping of class name to class file. Wrapping it up, he shows how to combine the two methods into a single ZendLoaderAutoloaderFactory instance.
</p>]]></description>
      <pubDate>Mon, 13 Feb 2012 09:54:43 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Volker Dusch's Blog: Autoloading for legacy, non-framework projects]]></title>
      <guid>http://www.phpdeveloper.org/news/16021</guid>
      <link>http://www.phpdeveloper.org/news/16021</link>
      <description><![CDATA[<p>
In his latest post <i>Volker</i> looks at something he sees more and more projected implementing as a simple way to not have to manually define paths all over their applications - creating autoloaders. His post shows how to <a href="http://edorian.posterous.com/autoloading-for-legacy-non-framework-projects">create one such autoloader</a> for a legacy, non-framework type of project.
</p>
<blockquote>
The first argument usually is "ease of use". It can get pretty annoying when you have to clutter your whole application with "require this file here and that file over there" statements. [...] The main motivation for autoloading usually is "getting rid of all the require statements and the problems resulting from forgetting one at one point where you don't notice it because on your machine it worked.
</blockquote>
<p>
In some projects you're lucky enough to have class name to file name mapping to make it simpler. His project didn't have that, so he needed a way around it. His answer came in the <a href="https://github.com/theseer/Autoload">PHP Autoload Builder</a> tool - a handy command line script that works through your code and builds an index of sorts you can refer to for the correct class-to-file map.
</p>]]></description>
      <pubDate>Wed, 09 Mar 2011 12:02:06 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Matthew Weier O'Phinney's Blog: Autoloading Benchmarks]]></title>
      <guid>http://www.phpdeveloper.org/news/14980</guid>
      <link>http://www.phpdeveloper.org/news/14980</link>
      <description><![CDATA[<p>
<i>Matthew Weier O'Phinney</i> has <a href="http://weierophinney.net/matthew/archives/245-Autoloading-Benchmarks.html">a new post</a> to his blog (following <a href="http://weierophinney.net/matthew/archives/244-Applying-FilterIterator-to-Directory-Iteration.html">this post</a> on directory iteration for autoloading) with some of the benchmarks of different methods he tried for automatically loading the libraries his scripts needed on demand.
</p>
<blockquote>
During the past week, I've been looking at different strategies for <a href="http://php.net/autoload">autoloading</a> in <a href="http://framework.zend.com/">Zend Framework</a>. I've suspected for some time that our class loading strategy might be one source of performance degradation, and wanted to research some different approaches, and compare performance. In this post, I'll outline the approaches I've tried, the benchmarking strategy I applied, and the results of benchmarking each approach.
</blockquote>
<p>
His testing included a baseline of the Zend Framework 1.x series loading, a naming/class standard following the PEAR standards and class mapping with file/class name pairs. He includes his benchmarking strategy and the scripts he used to run the tests (on <a href="http://github.com/weierophinney/zf2/blob/autoloading/bin/createAutoloadTestClasses.php">github here</a>). He ran them both with and without opcode caching to give a better overall performance view.
</p>]]></description>
      <pubDate>Wed, 18 Aug 2010 10:14:59 -0500</pubDate>
    </item>
  </channel>
</rss>
