<?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>Sat, 25 May 2013 09:41:01 -0500</pubDate>
    <ttl>30</ttl>
    <item>
      <title><![CDATA[Gonzalo Ayuso: The reason why singleton is a "problem" with PHPUnit]]></title>
      <guid>http://www.phpdeveloper.org/news/18511</guid>
      <link>http://www.phpdeveloper.org/news/18511</link>
      <description><![CDATA[<p>
<i>Gonzalo Ayuso</i> has <a href="http://gonzalo123.com/2012/09/24/the-reason-why-singleton-is-a-problem-with-phpunit/">a new post</a> that responds to the idea that "singletons are a problem when testing" your applications with something like PHPUnit.
</p>
<blockquote>
Maybe this pattern is not as useful as it is in J2EE world. With PHP everything dies within each request, so we cannot persist our instances between requests (without any persistent mechanism such as databases, memcached or external servers). But at least in PHP we can share the same instance, with this pattern, in our script.
</blockquote>
<p>
He illustrates a bad side effect of this sharing of resources with a simple unit test that increments a counter in a class. He notes that, because the script shares the object, you can't reliably know the state of it as you don't know what's happened before your use. He recommends two things to help the situation - either not use them at all or destroy the instance each time after using it (counterproductive to using a Singleton, obviously).
</p>]]></description>
      <pubDate>Mon, 24 Sep 2012 11:57:02 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[NetTuts.com: Building Web Applications from Scratch with Laravel]]></title>
      <guid>http://www.phpdeveloper.org/news/18115</guid>
      <link>http://www.phpdeveloper.org/news/18115</link>
      <description><![CDATA[<p>
On the NetTuts.com site there's a new tutorial introducing you to one of the relatively new players to the PHP framework scene - <a href="http://laravel.com/">Laravel</a>. In <a href="http://net.tutsplus.com/tutorials/php/building-web-applications-from-scratch-with-laravel/">this article</a> you'll see how to set up and create a basic Laravel app - a simple social app for sharing photos.
</p>
<blockquote>
In this Nettuts+ mini-series, we'll build a web application from scratch, while diving into a great new PHP framework that's rapidly picking up steam, called <a href="http://laravel.com/">Laravel</a> - a simple and elegant PHP 5.3 framework. First up, we'll learn more about Laravel, and why it's such a great choice for your next PHP-based web application.
</blockquote>
<p>
They briefly introduce the framework and talk about some of the things that it offers for the PHP 5.3 users out there (including the use of packages called Bundles, the built-in ORM, migration and Redis support). They start you off on the road to building the sample application with instructions on downloading, configuring and creating the first controllers, templated views (with Blade) and a bit on asset management.
</p>]]></description>
      <pubDate>Wed, 20 Jun 2012 08:56:21 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Henri Bergius' Blog: Composer Solves The PHP Code-Sharing Problem]]></title>
      <guid>http://www.phpdeveloper.org/news/17077</guid>
      <link>http://www.phpdeveloper.org/news/17077</link>
      <description><![CDATA[<p>
<i>Henri Bergius</i> has <a href="http://bergie.iki.fi/blog/composer_solves_the_php_code-sharing_problem/">a new post to his blog</a> today about a tool that could help make code reuse across PHP applications a much simpler process. The <a href="http://packagist.org/about-composer">Composer</a> tool (and <a href="http://packagist.org/">Packagist</a>) make setting up packages and dependencies easy.
</p>
<blockquote>
In PHP we've had <a href="http://bergie.iki.fi/blog/php-finally_getting_an_ecosystem/">a lousy culture</a> of code-sharing. Because depending on code from others as been tricky, every major PHP application or framework has practically had to reimplement the whole world. Only some tools, like <a href="https://github.com/sebastianbergmann/phpunit/">PHPUnit</a>, have managed to break over this barrier and become de-facto standards across project boundaries. But for the rest: just write it yourself. But now <a href="http://packagist.org/about-composer">Composer</a>, and its repository counterpart <a href="http://packagist.org/">Packagist</a>, promise to change all that. And obviously new conventions like PHP's <a href="http://www.php.net/manual/en/language.namespaces.rationale.php">namespacing support</a> and the <a href="https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-0.md">PSR-0</a> standard autoloader help.
</blockquote>
<p>
Making a package is as simple as setting up a JSON-based configuration file that names dependencies and package metadata (like name, type, etc). Composer generates an autoloader of its own to handle the loading of your needs based on the dependencies listed as a part of the package. If you'd like more information about Composer or to get the latest version and try it yourself, check out <a href="https://github.com/composer/composer">the project's github repository</a>.
</p>]]></description>
      <pubDate>Wed, 02 Nov 2011 16:28:25 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Enrico Zimuel's Blog: PHP session sharing using Zend Server CE and MS SQL Server]]></title>
      <guid>http://www.phpdeveloper.org/news/14366</guid>
      <link>http://www.phpdeveloper.org/news/14366</link>
      <description><![CDATA[<p>
With several articles out there about sharing session across multiple servers on databases, there seemed to be a lack of examples that used SQL Server to do it. <i>Enrico Zimuel</i> has helped to solve that problem with his new post on using <a href="http://www.zimuel.it/blog/?p=402">Zend Server and SQL Server</a> to persist the session data.
</p>
<blockquote>
In the open source community there are many examples on how to share session data using database but i didn't found an example using MS SQL Server with the new <a href="http://www.microsoft.com/sqlserver/2005/en/us/php-driver.aspx">Microsoft SQL Server Driver for PHP</a> so I decided to write a new session handler from scratch. I used the last version 1.1 of the Microsoft SQL Server Driver. I tested the session handler using two Windows Server 2003 running IIS6 and <a href="http://www.zend.com/en/products/server-ce/downloads">Zend Server 5</a> CE. I used a SQL Server 2005 database to share the PHP session between the two servers. 
</blockquote>
<p>
He shows you how to set up the custom session handler, create the table where the session data will be stored and includes a <a href="http://www.zimuel.it/blog/wp-content/uploads/2010/04/SQLSrv_Session.zip">sample test script</a> (a part of his SQLSrv_Session class) so you can ensure that it's all cooperating as it should.
</p>]]></description>
      <pubDate>Fri, 16 Apr 2010 12:11:39 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Hasin Hayder's Blog: Building services like FriendFeed using PHP - Part 1]]></title>
      <guid>http://www.phpdeveloper.org/news/10315</guid>
      <link>http://www.phpdeveloper.org/news/10315</link>
      <description><![CDATA[<p>
<i>Hasin Hayder</i> has posted <a href="http://hasin.wordpress.com/2008/05/31/building-friendfeed-using-php-part-1/">part one</a> of a series he's doing on making an application similar to the popular <a href="http://friendfeed.com/">FriendFeed</a> site in PHP.
</p>
<blockquote>
<a href="http://friendfeed.com/">Friendfeed</a> is an excellent life streaming service aggregating all your feeds from different service providers, compile them together, build a social network among your known people and finally deliver all these feeds as a mashup. [...] In this blog post I will try to focus on how to develop such a service like Friendfeed using PHP and JS and how to scale such a huge load successfully.
</blockquote>
<p>
This first part looks at the photo sharing handling of the application, including links to libraries already written in PHP to connect to them (like <a href="http://www.flickr.com">Flickr</a> and <a href="http://www.smugmug.com/">Smugmug</a>). 
</p>]]></description>
      <pubDate>Mon, 02 Jun 2008 08:47:32 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Community News: Komodo IDE 4.0 Released]]></title>
      <guid>http://www.phpdeveloper.org/news/7159</guid>
      <link>http://www.phpdeveloper.org/news/7159</link>
      <description><![CDATA[<p>
As mentioned by both <a href="http://blog.phpdoc.info/archives/49-Komodo-4.0-and-a-free-surprise.html">Sean Coates</a> and the <a href="http://www.php-mag.net/magphpde/magphpde_news/psecom,id,26809,nodeid,5.html">International PHP Magazine</a>, ActiveState has release the latest version of their popular development environment - <a href="http://activestate.com/products/komodo_ide/">Komodo IDE 4.0</a>.
</p>
<blockquote>
Komodo IDE 4.0 is the first unified workspace for end-to-end development of dynamic web applications. A rich feature set for client-side Ajax languages such as CSS, HTML, JavaScript and XML, coupled with advanced support for dynamic languages such as Perl, PHP, Python, Ruby and Tcl, enables developers to quickly and easily create robust web apps.
</blockquote>
<p>
<a href="http://activestate.com/products/komodo_ide/">Komodo</a> is all about simplicity and helping you write your code. This includes features like a multi-language editor, integrating sharing abilities, the ability to create Firefox-like extensions to add to other applications, and full customization settings to make your worspace your own. 
</p>
<p>
Find out more about the software <a href="http://activestate.com/products/komodo_ide/">on Komodo's page</a> or just head over and buy this latest version for a discounted rate of $245 USD. There's also a <a href="http://activestate.com/store/evallicense.aspx?PliGuid=8E08763F-FC3D-456F-BE10-F0D725F660F8">trial copy</a> you can download and check out before spending the cash.
</p>]]></description>
      <pubDate>Wed, 24 Jan 2007 09:45:00 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[IT Manager's Journal: Court library AMPs up]]></title>
      <guid>http://www.phpdeveloper.org/news/4573</guid>
      <link>http://www.phpdeveloper.org/news/4573</link>
      <description><![CDATA[Via <a href="http://www.linuxlibrarian.org/?p=97">this new post</a> from LinuxLibrarian.org today, there's a pointer to <a href="http://www.itmanagersjournal.com/article.pl?sid=05/12/22/2236213">this new article</a> on the IT Manager's Journal site about the Supreme Court Library of North Carolina's move to an Apache/MySQL/PHP combination.
<p>
<quote>
<i>
Until last year, [Ronald] Diener's organization was paying thousand of dollars a year to a library software vendor, but the vendor's services had become inadequate for the task. The court's IT team determined that they could develop a better, cost-effective in-house solution that would at the same time be open to participation from outside.
<p>
The open source option available through Apache, MySQL, and PHP (AMP) would serve as a resource to collaborate with other organizations and libraries, even internationally, in creating a continually upgradeable software portfolio. This solution would both cut costs and enhance the value of what could be offered to their own clients and a larger audience of legal professionals.
</i>
</quote>
<p>
They <a href="http://www.itmanagersjournal.com/article.pl?sid=05/12/22/2236213">do mention</a> the comment made about finding documentation on implementing an AMP setup, but other than that, they seem happy overall with the system - plus it's already saving them money.]]></description>
      <pubDate>Wed, 28 Dec 2005 07:26:56 -0600</pubDate>
    </item>
  </channel>
</rss>
