<?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, 24 May 2012 11:32:14 -0500</pubDate>
    <ttl>30</ttl>
    <item>
      <title><![CDATA[A Cloudy Place: PHPFog and Pagoda Box: A Look at PHP Platforms]]></title>
      <guid>http://www.phpdeveloper.org/news/17645</guid>
      <link>http://www.phpdeveloper.org/news/17645</link>
      <description><![CDATA[<p>
On the "A Cloudy Place" blog there's <a href="http://acloudyplace.com/2011/12/phpfog-and-pagoda-box-a-look-at-php-platforms/">a recent post</a> comparing two of the more popular platform-as-a-service PHP offerings out there - <a href="http://phpfog.com">PHPFog</a> and <a href="http://pagodabox.com">PagodaBox</a>.
</p>
<blockquote>
Platform services like Heroku and AppEngine have been well-known for the last few years and many companies have been using them successfully in their business. They are more attractive to startups, due to low initial cost and smaller headaches involved in setup. 2011 was a great year for platform services, with the emergence of many platform services and a new trend for supporting multiple languages instead of supporting a single language. [...]  Here, I will go through two of the PHP platform services I have experimented with: PHPFog and Pagoda Box.
</blockquote>
<p>
He talks about each of the options and looks at several key elements of each including the deployment process, scalability, monitoring tools, offerings for caching and the database management utilities bundled with the application. Both services offer a "free instance" for you to try out their services, so give them both a try and see what you think.
</p>]]></description>
      <pubDate>Thu, 08 Mar 2012 09:29:45 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Phil Sturgeon's Blog: 2012: The year of PHP cloud hosting]]></title>
      <guid>http://www.phpdeveloper.org/news/17337</guid>
      <link>http://www.phpdeveloper.org/news/17337</link>
      <description><![CDATA[<p>
<i>Phil Sturgeon</i> has a new post to his blog about what he sees 2012 as being for the PHP community - the <a href="http://philsturgeon.co.uk/blog/2012/01/2012-the-year-of-php-cloud-hosting">year of cloud hosting</a> with all of the platform-as-a-service companies that have started up over the last year.
</p>
<blockquote>
Cloud hosting is nothing new. Seeing as "cloud" is such a loosely used term some will consider their VPS solutions on Slicehost or Rackspace to be "cloud hosting". That is partially true, but this article covers how PHP is getting some serious attention in the PaaS (Platform as a Service) field. This year you will almost certainly find yourself making the decision wether or not to move some of your applications and services across to the cloud, and this article can hopefully help you work out why and how.
</blockquote>
<p>
He talks a bit about how the idea compares with Ruby's <a href="http://www.heroku.com/">Heroku</a> hosting service and some of the benefits that come with it:
</p>
<ul>
<li>Speedy deployments
<li>Security
<li>Scaling
</ul>
He also looks forward to the future, mentioning some of the major players in the PHP PaaS space like <a href="http://orchestra.io/">Orchestra.io</a> and <a href="http://appfog.com/">App Fog</a> (as well as a brief suggestion of a possible PHP beta over at Heroku).]]></description>
      <pubDate>Tue, 03 Jan 2012 10:19:48 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Devshed: Building a PHP ORM: Deploying a Blog]]></title>
      <guid>http://www.phpdeveloper.org/news/17237</guid>
      <link>http://www.phpdeveloper.org/news/17237</link>
      <description><![CDATA[<p>
DevShed concludes their three-part series about building an ORM in PHP with <a href="http://www.devshed.com/c/a/MySQL/Building-a-PHP-ORM-Deploying-a-Blog/">this latest article</a>. It introduces the idea of dependency injection into the mix, showing how it can be used in the relationships between entities.
</p>
<blockquote>
if you've already read the two installments that precede this one, it's probable that you're familiar with the inner workings of this sample ORM. In those chapters I implemented the ORM's data access and mapping layers, along with a simple domain model. To be frank, the development of this last tier is entirely optional; however, it's useful for demonstrating the ORM's actual functionality in the deployment of a blog program, which naturally will handle some "typical" domain objects, namely blog entries, comments and authors.
</blockquote>
<p>
They share the code for creating proxy objects and, using a "poor man's dependency injection container" made from a factory method, interfaces and service classes to handle the results.
</p>]]></description>
      <pubDate>Fri, 09 Dec 2011 11:13:18 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Community News: PHPFog Gifts Free-for-Life Applications]]></title>
      <guid>http://www.phpdeveloper.org/news/17221</guid>
      <link>http://www.phpdeveloper.org/news/17221</link>
      <description><![CDATA[<p>
PHPFog, the PHP-centric platform as a service has <a href="http://blog.phpfog.com/2011/12/06/php-fog-is-free-forever-and-now-even-more-free/">made a new post</a> to this blog about two new "gifts" they're providing to developers:
</p>
<blockquote>
I want to thank you for your interest in PHP Fog. Thanks to you and tens of thousands of developers like you, we have grown massively in the last year and  a half.  As a sign of my gratitude, I'd like to give you two free gifts.
</blockquote>
<p>
Their gifts to the community are a conversion of the 6 month applications over to a free-for-life product and you can now deploy three of these "free forever" applications instead of just the one. You can <a href="https://phpfog.com/users/new">signup here</a> for the service with offerings of installed software like PyroCMS, Drupal 7, MediaWiki and Slim. For more information, you can <a href="https://www3.gotomeeting.com/register/311441990">attend this webinar</a>.
</p>]]></description>
      <pubDate>Wed, 07 Dec 2011 08:42:32 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[php|architect: Transactional Emails for Fun and Profit]]></title>
      <guid>http://www.phpdeveloper.org/news/17160</guid>
      <link>http://www.phpdeveloper.org/news/17160</link>
      <description><![CDATA[<p>
On the php|architect site there's a recent tutorial from <i>Cal Evans</i> about building a <a href="http://www.phparch.com/2011/11/transactional-emails-for-fun-and-profit/">transactional email system</a> with the help of a <a href="http://sourceforge.net/projects/php-aws-ses/">simple library</a> and the SES system from Amazon.
</p>
<blockquote>
I love APIs. A well-defined API can make short work of a complex problem. It's even more fun when you find a cool API with a great wrapper to make it simple to use. That's what I found when I started playing with Amazon's Simple Email Service; a tool that was easy to work with, solved a problem I needed solved, and had a simple to use PHP wrapper.
</blockquote>
<p>
Based on the <a href="http://sourceforge.net/projects/php-aws-ses/">SES library</a> by <i>Dan Meyers</i>, he includes the code to pull in a simple email template and populate it with the values you want, log in to the Amazon SES service and send the email via the remote service.
</p>]]></description>
      <pubDate>Tue, 22 Nov 2011 17:58:33 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[DevShed: Service Layers in PHP Applications (a Series)]]></title>
      <guid>http://www.phpdeveloper.org/news/17004</guid>
      <link>http://www.phpdeveloper.org/news/17004</link>
      <description><![CDATA[<p>
DevShed has posted a series of tutorials talking about different sorts of service layers in PHP applications - seven of them to be exact:
</p>
<blockquote>
If you're looking for an approachable guide that teaches you how to implement an easily-customizable service layer in PHP, then take a peek at this article series. In a step-by-step fashion, it walks you through the development of a sample web application, which uses a service to perform CRUD operations on a domain model composed of a few user entities.
</blockquote>
<p>Service layer types covered in the series are:</p>
<ul>
<li><a href="http://www.devshed.com/c/a/PHP/PHP-Service-Layers-A-Final-Example/">Working with database entities</a>
<li><a href="http://www.devshed.com/c/a/PHP/PHP-Services-Layers-Data-Mappers/">Data Mappers</a>
<li><a href="http://www.devshed.com/c/a/PHP/PHP-Service-Layers-Database-Adapters/">Database adapters</a>
<li><a href="http://www.devshed.com/c/a/PHP/PHP-Service-Layers-Handling-Entity-Collections/">Handling Entity Collections</a>
<li><a href="http://www.devshed.com/c/a/PHP/PHP-Service-Layers-User-Services/">User Services</a>
<li><a href="http://www.devshed.com/c/a/PHP/PHP-Service-Layers-Dependency-Injection/">Dependency Injections</a>
<li><a href="http://www.devshed.com/c/a/PHP/PHP-Service-Layers-Modeling-Domain-Objects/">Modeling Domain Objects</a>
</ul>]]></description>
      <pubDate>Tue, 18 Oct 2011 08:50:09 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[NetTuts.com: Getting Real-Time with Pusher]]></title>
      <guid>http://www.phpdeveloper.org/news/16949</guid>
      <link>http://www.phpdeveloper.org/news/16949</link>
      <description><![CDATA[<p>
On NetTuts.com today there's a new tutorial showing you how to <a href="http://net.tutsplus.com/tutorials/javascript-ajax/getting-real-time-with-pusher/">implement the Pusher service</a> that gives you <a href="http://pusher.com/">real-time messaging</a> for your application. Their backend for the project is written in PHP using Pusher's library.
</p>
<blockquote>
Do you want to spice up your web applications by making them real-time - but don't want to create new infrastructures for the sole purpose of getting web sockets to work? In this article, we'll explore how to use and implement <a href="http://pusher.com/">Pusher</a>, an HTML5 WebSocket-powered real-time messaging service for your applications.
</blockquote>
<p>
Pusher uses HTML5 <a href="http://en.wikipedia.org/wiki/WebSocket">WebSockets</a> to handle the messaging, so you'll need a browser that supports it to follow along with the tutorial. The Pusher API provides and endpoint for authorization and the push and pull of messages. In the tutorial, they create a simple chat application that gives a "Who's Online" and a window with the latest messages. You can download the full source (Javascript and PHP) <a href="http://nettuts.s3.amazonaws.com/1059_pusher/demo.zip">here</a> or view a demo <a href="http://nikkobautista.com/demos/pusher">here</a>.
</p>]]></description>
      <pubDate>Wed, 05 Oct 2011 08:39:52 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Web Species Blog: We built a cloud platform for PHP. Wait...what?]]></title>
      <guid>http://www.phpdeveloper.org/news/16946</guid>
      <link>http://www.phpdeveloper.org/news/16946</link>
      <description><![CDATA[<p>
As mentioned on the Web Species blog in <a href="http://blog.webspecies.co.uk/2011-10-03/we-built-a-cloud-platform-for-php-wait-what.html">this recent post</a>, they've developed a "Windows Azure done right" platform (<a href="http://cloud.webspecies.co.uk/">Azure++</a>, name pending) that makes deploying to an Azure platform a much simpler process, pulling from something like a remote code repository (maybe <a href="http://github.com">github</a>) and deploying in less than five seconds.
</p>
<blockquote>
Azure is just impossible to use for PHP today. This is a fact. Doesn't matter which way you look at it, it just su.. isn't particularly good. The amount of steps you need to make, the knowledge you need to have and the fact that you can only deploy from Windows host are some of the things which make it a very painful experience. I had enough of this pain.
</blockquote>
<p>
<a href="http://cloud.webspecies.co.uk/">The service</a> helps you make quick and easy Azure deployments. <a href="http://cloud.webspecies.co.uk/features">Features</a> include multiple datacenter support, your choice of PHP versions (5.2 or 5.3) and the ability to deploy in "production" or "development" environments. You can find out more about the service <a href="http://cloud.webspecies.co.uk/">here</a>.
</p>]]></description>
      <pubDate>Tue, 04 Oct 2011 10:33:04 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[SkyTechGeek.com: 10 Exceptional Tools For Website Testing]]></title>
      <guid>http://www.phpdeveloper.org/news/16760</guid>
      <link>http://www.phpdeveloper.org/news/16760</link>
      <description><![CDATA[<p>
Sometimes a little (external) testing of your website is in order and <i>Gagan Chhatwal</i> has posted <a href="http://skytechgeek.com/2011/08/10-exceptional-tools-for-website-testing/">his list of ten tools</a> you can use to check everything from  how much load the site can take to what can be done to optimize the load time.
</p>
<blockquote>
When maintaining or running a website , Webmasters need to keep in mind that one of the pertinent issues they will need to focus on is :Website Testing, which is not only vital for the website itself but for the user as well and one should not overlook its importance. [We have] collected some vital and free website testing tools which will help Webmasters in testing their sites thus saving users to conduct time consuming needless searches in finding the best resources pertaining to Web related tools and info.
</blockquote>
<p>Among the tools on the list are services like:</p>
<ul>
<li><a href="http://loadimpact.com/">Load Impact</a>
<li><a href="https://browsermob.com/performance-testing">Browser Mob</a>
<li><a href="http://host-tracker.com/">Host Tracker</a>
<li><a href="http://builtwith.com/">Built With</a>
<li><a href="http://online.htmlvalidator.com/php/onlinevallite.php">CSE HTML validator</a>
</ul>
<p>
Most of these resources are free services, if not then they have a trial where you can see if it's a good fit.
</p>]]></description>
      <pubDate>Tue, 23 Aug 2011 13:25:22 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Ldeveloper Tech Blog: PHP - Fatal error: Uncaught SoapFault exception: Could not connect to host...]]></title>
      <guid>http://www.phpdeveloper.org/news/16712</guid>
      <link>http://www.phpdeveloper.org/news/16712</link>
      <description><![CDATA[<p>
On the Ldeveloper Tech Blog today there's a helpful new post about an error PHP's SOAP extension could throw <a href="http://ldeveloper.blogspot.com/2011/08/php-fatal-error-uncaught-soapfault.html">about not being able to connect to the host</a> despite all settings being correct.
</p>
<blockquote>
I receive this nasty error yesterday and it took me some time to figure out the problem: "Fatal error: Uncaught SoapFault exception: [HTTP] Could not connect to host in...". This ["new SoapClient"] line passes without any problems and this [var_dump on __getFunctions] shows the function prototypes correctly.
</blockquote>
<p>
His script connects to the service as its supposed to but the "could not connect" is still thrown. He found a few references to OpenSSL issues that could cause it, but his code was correct so he turned to the other side - the service itself. As it turns out, it wasn't configured correctly.
</p>
<blockquote>
It was configured to send invalid url and the function calls were using that invalid url. So there are two solutions [...]  the first is to configure the server correctly. The other is to give __doReguest the correct location.
</blockquote>]]></description>
      <pubDate>Fri, 12 Aug 2011 11:38:04 -0500</pubDate>
    </item>
  </channel>
</rss>

