<?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>Sun, 19 May 2013 14:53:03 -0500</pubDate>
    <ttl>30</ttl>
    <item>
      <title><![CDATA[Lorna Mitchell: Managing PHP 5.4 Extensions on Ubuntu]]></title>
      <guid>http://www.phpdeveloper.org/news/18820</guid>
      <link>http://www.phpdeveloper.org/news/18820</link>
      <description><![CDATA[<p>
In <a href="http://www.lornajane.net/posts/2012/managing-php-5-4-extensions-on-ubuntu">this new post</a> to her site <i>Lorna Mitchell</i> shares a handy tip for those using Ubuntu (or a Debian-based distribution) about how to manage your PHP 5.4 extensions and the "php5enmod" tool.
</p>
<blockquote>
My shiny new VPS* runs Ubuntu 12.10 (official subtitle: Quantal Queztal. Local nickname: Quirky Kestrel) and therefore has PHP 5.4 installed. It's very new so every command I type is missing, and today I realised that included a <a href="http://pecl.php.net/">PECL</a> module (pecl_http, of course). [...] What's happened here is that all debian-flavoured unixes have adopted this standard for their PHP 5.4 packages, so if you're using debian, ubuntu, or any of their relatives with PHP 5.4, you'll see a directory structure like this. When you add a module to PHP, you'll add a file to the mods-available directory enabling the module and adding any config specific to it. 
</blockquote>
<p>
She points out that the "phpenmod" command, accompanied by the PECL extension to install, is the newer way to correctly get these extensions downloaded and configured correctly. 
</p>]]></description>
      <pubDate>Thu, 29 Nov 2012 11:08:44 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Project: Box - Making Creating PHARs Easier]]></title>
      <guid>http://www.phpdeveloper.org/news/18401</guid>
      <link>http://www.phpdeveloper.org/news/18401</link>
      <description><![CDATA[<p>
There's a new project on Github that wants to help making your <a href="http://php.net/phar">phar</a> archives for your PHP applications. The process is a little obtuse right now and <a href="https://github.com/kherge/Box">Box</a> wants to simplify it.
</p>
<blockquote>
Box is a library and command line application for simplifying the PHAR creation process. [Features include] creating new PHARs with a simple configuration file, add and replace files in existing PHARs, extract existing PHARs, with option to cherry pick files and verify PHAR signatures.
</blockquote>
<p>
The project is still relatively young but it looks like it's off to a good start. Phar files are a powerful tool to have in a PHP developer's arsenal but developing them can be a pain. Hopefully something like this can make life easier.  
</p>]]></description>
      <pubDate>Fri, 24 Aug 2012 10:33:52 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Henri Bergius' Blog: Using Composer To Manage Dependencies In Heroku PHP Apps]]></title>
      <guid>http://www.phpdeveloper.org/news/17921</guid>
      <link>http://www.phpdeveloper.org/news/17921</link>
      <description><![CDATA[<p>
<i>Henri Bergius</i> has a new post to his blog showing you how to use the popular <a href="http://getcomposer.org">Composer</a> package management tool to <a href="http://bergie.iki.fi/blog/using_composer_to_manage_dependencies_in_heroku_php_apps/">manage dependencies in Heroku applications</a>.
</p>
<blockquote>
<p>
While Heroku <a href="http://www.flourish.org/blog/?p=687">got its start</a> from hosting Ruby on Rails applications, it nowadays supports <a href="https://devcenter.heroku.com/articles/cedar">many different environments</a> in the Cedar stack. Node.js is what many use, but they also <a href="http://www.gravitywell.co.uk/blog/post/deploying-php-apps-to-heroku">do support PHP</a>. Dependency management is easy for Node.js applications as Heroku recognizes your package.json files and <a href="https://devcenter.heroku.com/articles/nodejs#declare_dependencies_with_npm">automatically installs</a> the libraries needed via NPM.
</p>
<p>
Until now PHP developers haven't had this convenience, but as <a href="http://packagist.org/">Composer</a> is emerging as the <a href="http://bergie.iki.fi/blog/composer_solves_the_php_code-sharing_problem/">default PHP package manager</a>, I've now <a href="https://github.com/heroku/heroku-buildpack-php/pull/10">added support</a> for it. Before the <a href="https://github.com/heroku/heroku-buildpack-php/pull/10">pull request</a> gets accepted, Composer dependency handling can already be used by specifying my custom PHP buildpack when creating Heroku apps.
</p>
</blockquote>
<p>
He shows you how to get it up and running with a sample application - creating the new git archive, creating the Heroku app with the custom backapack (and a "composer.json" file), setting up the main "index.php" file and push it all to Heroku. 
 You can view his sample application <a href="http://urlizer-service.herokuapp.com/">here</a> (a simple URL encoding form).
</p>]]></description>
      <pubDate>Tue, 08 May 2012 08:38:41 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Alessandro Nadalin's Blog: Managing PHP dependencies with composer]]></title>
      <guid>http://www.phpdeveloper.org/news/17474</guid>
      <link>http://www.phpdeveloper.org/news/17474</link>
      <description><![CDATA[<p>
<i>Alessandro Nadalin</i> has a new post to his blog looking at the <a href="https://github.com/composer/composer">Composer</a> project and using it to manage packages and dependencies in PHP applications.
</p>
<blockquote>
Managing dependencies between pieces of software, in PHP, hasn't always been a relief: we had <a href="http://pear.php.net">PEAR</a> and <a href="http://pecl.php.net">PECL</a> with their workflows and problems while, in other ecosystems, the solution to this problem has been solved in better ways, like NodeJS's <a href="http://npmjs.org/">NPM</a>.
</blockquote>
<p>
He takes a first look at the tool, describing how to get it set up, create a sample configuration (describing each section inside it) and an example of the tool's output. He also briefly touches on the <a href="http://packagist.org/">Packagist</a> website/repository and links to the instructions on how to <a href="http://packagist.org/packages/submit">create your own</a>.
</p>]]></description>
      <pubDate>Tue, 31 Jan 2012 13:11:09 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Stuart Herbert's Blog: Installing Phix on Various OSes (OSX, Debian, Ubuntu, Fedora)]]></title>
      <guid>http://www.phpdeveloper.org/news/16939</guid>
      <link>http://www.phpdeveloper.org/news/16939</link>
      <description><![CDATA[<p>
<i>Stuart Herbert</i> has put together a series of posts detailing how to get the <a href="http://phix-project.org/">Phix</a> component creation and management tool installed on various operating systems.
</p>
<blockquote>
Phix makes it extremely easy to create and maintain your own PEAR-installer compatible components for reuse in your PHP applications. Installation takes just seconds, and it's both open-source and framework-agnostic!
</blockquote>
<p>The OS guides help you get it installed for:</p>
<ul>
<li><a href="http://blog.stuartherbert.com/php/2011/10/02/php-components-installing-phix-on-osx/">OSX</a>
<li><a href="http://blog.stuartherbert.com/php/2011/10/01/php-components-installing-phix-on-fedora/">Fedora</a>
<li><a href="http://blog.stuartherbert.com/php/2011/10/01/php-components-installing-phix-on-ubuntu/">Ubuntu</a>
<li><a href="http://blog.stuartherbert.com/php/2011/10/03/php-components-installing-phix-on-debian/">Debian</a>
<li><a href="http://blog.stuartherbert.com/php/2011/10/03/php-components-installing-phix-on-centos/">CentOS</a>
</ul>
<p>
For more information about Phix (including helpful "getting started" details) check out <a href="http://phix-project.org/">the project's website</a>.
</p>]]></description>
      <pubDate>Mon, 03 Oct 2011 10:02:58 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[PHPBuilder.com: Back to Basics: Managing PHP Configuration php.ini Directives]]></title>
      <guid>http://www.phpdeveloper.org/news/16688</guid>
      <link>http://www.phpdeveloper.org/news/16688</link>
      <description><![CDATA[<p>
<i>Jason Gilmore</i> gets "back to basics" in a new tutorial with a look at <a href="http://www.phpbuilder.com/columns/php-directives/Jason_Gilmore08032011.php3">managing configuration in your ini file</a> to tune it to just what you need.
</p>
<blockquote>
While PHP's configuration capabilities are indeed powerful, the sheer breadth and different ways in which these configuration directives can be set are often confusing and downright intimidating to newcomers. So in this article it worth meandering from the typically intermediate-level discussion and instead offer some insight into PHP's configuration-specific infrastructure.
</blockquote>
<p>
He starts by mentioning the <a href="http://php.net/phpinfo">phpinfo</a> function that generates the complete list of current settings for your installation. With that in hand and an idea of what settings are out there, he starts going through some of the basics of working with ini settings - updating the php.ini, setting values via a .htaccess file and chancing them directly in the executing script.
</p>]]></description>
      <pubDate>Mon, 08 Aug 2011 13:16:03 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Chris Jones' Blog: Malicious website use will never go away: how do you manage it?]]></title>
      <guid>http://www.phpdeveloper.org/news/16265</guid>
      <link>http://www.phpdeveloper.org/news/16265</link>
      <description><![CDATA[<p>
<i>Chris Jones</i> has a new post to his OTN blog today <a href="http://blogs.oracle.com/opal/2011/04/malicious_website_use_will_nev.html">pointing to two new articles</a> by <i>Eli White</i> about managing malicious website use:
</p>
<blockquote>
The techniques Eli covers will always be applicable in one form or another. They should be a fundamental part of any website architect's bag of tricks.
</blockquote>
<p>
The <a href="http://www.oracle.com/technetwork/articles/dsl/combating-spam-360061.html">first article</a> focuses more on methods for preventing and dealing with the inevitable spamming that comes with running a larger site. <i>Eli</i>'s experience at <a href="http://digg.com">Digg</a> has provided him with recommendations like creating hurdles for spammers to get past and evaluating the content (services like Defensio or Akismet are useful for this).
</p>
<p>
The <a href="http://www.oracle.com/technetwork/articles/dsl/preventing-website-manipulation-366493.html">second article</a> talks about something a bit harder to deal with - when users "game the system" and find the loopholes. His recommendations to combat this sort of abuse include rate limiting, pattern matching and leaving "traps" by tracking user usage.
</p>]]></description>
      <pubDate>Thu, 28 Apr 2011 11:06:43 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[NetTuts.com: Managing Cron Jobs with PHP]]></title>
      <guid>http://www.phpdeveloper.org/news/16167</guid>
      <link>http://www.phpdeveloper.org/news/16167</link>
      <description><![CDATA[<p>
New on NetTuts.com there's a tutorial about <a href="http://net.tutsplus.com/tutorials/php/managing-cron-jobs-with-php-2/">using cron with PHP</a> and how to manage the jobs your server currently runs.
</p>
<blockquote>
The cronTab, or "Cron Table", is a Linux system process / daemon which facilitates the scheduling of repetitive tasks thereby easing up our day to day routine. In this tutorial, we'll create a dynamic PHP class that, using a secure connection, provides us with a means to manipulate the cronTab!
</blockquote>
<p>
They explain the cron format (time and script to run) and how to set up a crontab management class that uses the <a href="http://www.php.net/manual/en/ssh2.installation.php">ssh extension</a> for PHP to communicate with the remote server. Their class includes methods for setting up jobs, writing them out to the cron file, removing existing jobs and dropping the entire cron file at once.
</p>]]></description>
      <pubDate>Fri, 08 Apr 2011 12:39:30 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Till Klampaeckel's Blog: Contributing to PEAR: Taking over packages]]></title>
      <guid>http://www.phpdeveloper.org/news/15945</guid>
      <link>http://www.phpdeveloper.org/news/15945</link>
      <description><![CDATA[<p>
<i>Till Klampaeckel</i> has <a href="http://till.klampaeckel.de/blog/archives/139-Contributing-to-PEAR-Taking-over-packages.html">posted a few suggestions for you</a> if you'd like the take the reigns of a PEAR package when it's not maintained.
</p>
<blockquote>
One of the more frequent questions I see on the mailing lists and IRC is, "How do I take over a package?". Very often people start to use a PEAR package and then at some point encounter either a bug or they miss a certain feature. The package's state however is inactive or flat unmaintained.
</blockquote>
<p>
He recommends a few different courses of action - first asking if there's a way to help out, then stepping it up and pushing the fixes in yourself and, finally, deciding if you really do want to maintain the package (and show it by contributing).
</p>]]></description>
      <pubDate>Tue, 22 Feb 2011 14:45:53 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Brian Moon's Blog: Monitoring PHP Errors]]></title>
      <guid>http://www.phpdeveloper.org/news/15404</guid>
      <link>http://www.phpdeveloper.org/news/15404</link>
      <description><![CDATA[<p>
<i>Brian Moon</i> has <a href="http://brian.moonspot.net/monitoring-php-errors">a new post</a> to his blog that pulls together some of his thoughts on monitoring PHP applications and how to handle the error that might be thrown.
</p>
<blockquote>
PHP errors are just part of the language. Some internal functions throw warnings or notices and seem unavoidable. A good case is parse_url. The point of parse_url is to take apart a URL and tell me the parts. Until recently, the only way to validate a URL was a regex. You can now use filter_var with the FILTER_VALIDATE_URL filter. But, in the past, I would use parse_url to validate the URL. It worked as the function returns false if the value is not a URL. But, if you give parse_url something that is not a URL, it throws a PHP Warning error message. The result is I would use the evil @ to suppress errors from parse_url. Long story short, you get errors on PHP systems. And you don't need to ignore them.
</blockquote>
<p>
He talks about the two-step process he's upgraded to to help monitor and handle the errors that pop up - an <a href="http://us.php.net/manual/en/function.set-error-handler.php">error handler</a> that logs human-readable and json versions of the errors and something like <a href="http://circonus.com/">Circonus</a> to do metric tracking. He also mentions some external services recommended on twitter - <a href="http://hoptoadapp.com/">HopToad</a> and <a href="http://www.loggly.com/">Loggly</a>.
</p>]]></description>
      <pubDate>Tue, 09 Nov 2010 11:09:16 -0600</pubDate>
    </item>
  </channel>
</rss>
