<?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, 09 Jul 2008 00:18:00 -0500</pubDate>
    <ttl>30</ttl>
    <item>
      <title><![CDATA[Tobias Schlitt's Blog: Sending HEAD requests with ext/curl]]></title>
      <guid>http://www.phpdeveloper.org/news/10497</guid>
      <link>http://www.phpdeveloper.org/news/10497</link>
      <description><![CDATA[<p>
In a <a href="http://schlitt.info/applications/blog/index.php?/archives/606-Sending-HEAD-requests-with-extcurl.html">new post</a>, <i>Tobias Schlitt</i> looks at how to send HEAD requests right along with the rest of your payload with the ext/curl extension for PHP.
</p>
<blockquote>
I recently wanted to perform a HEAD request to a file, after which I wanted to perform some more advanced HTTP interaction, so <a href="http://curl.haxx.se/">CURL</a> was also the tool of choice here.
</blockquote>
<p>
He started with the (slow?) command line to get the parameters right before moving into PHP. After picking out the right ones ("curl -I -X HEAD http://localhost/admin/") he transfers them into a series of curl_setopt calls that specifies a HEAD request type and no content to send (with CURLOPT_NOBODY).
</p>]]></description>
      <pubDate>Fri, 27 Jun 2008 08:48:02 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Fred Wu's Blog: Ruby on Rails, Passenger (ModRails) vs CodeIgniter and Kohana (Benchmarks)]]></title>
      <guid>http://www.phpdeveloper.org/news/10274</guid>
      <link>http://www.phpdeveloper.org/news/10274</link>
      <description><![CDATA[<p>
On his ThisLab blog, <i>Fred Wu</i> has posted some <a href="http://thislab.com/2008/05/26/ruby-on-rails-passenger-modrails-vs-codeigniter-and-kohana/">quick benchmarks</a> comparing some of the popular frameworks out there - Ruby on Rails/Passenger versus CodeIgniter/Kohana.
</p>
<blockquote>
Last few days I have been playing with Ruby and Rails, again. Today, when someone was asking on a forum about the efficiency of web frameworks, I thought I'd give the few frameworks I work with some more benchmark testing.
</blockquote>
<p>
His benchmarking is based on basic "Hello World" page requests for each of the frameworks. His results were interesting with CodeIgniter coming out with the fewest number of requests responded to (per second) and Rails coming out on top by a margin of about eighty or ninety over CodeIgniter/Kohana. 
</p>
]]></description>
      <pubDate>Tue, 27 May 2008 08:47:58 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Michael Girouard's Blog: Rolling Your Own MVC: The Page Load Scenario]]></title>
      <guid>http://www.phpdeveloper.org/news/9944</guid>
      <link>http://www.phpdeveloper.org/news/9944</link>
      <description><![CDATA[<p>
<i>Michael Girouard</i> has posted his <a href="http://www.lovemikeg.com/blog/2008/04/07/rolling-your-own-mvc-the-page-load-scenario/">10,00 foot view</a> of the typical structure of an Model/View/Controller application (and framework) and how a page request is handled:
</p>
<blockquote>
In my <a href="http://www.lovemikeg.com/blog/2008/02/21/rolling-your-own-mvc-introduction/">previous article</a>, I announced that I would be documenting the process of developing a simple MVC framework. In this post I will go into a little more detail about each of the specific components of our MVC and will discuss the series of events which occur each time a page loads, otherwise known as the page load scenario.
</blockquote>
<p>
He talks about how URIs work, the role of mod_rewrite, several of the objects involved (like the Front Controller, Request, Route and View) and how they all fit in with the custom Models, Views and Controllers the user could define.
</p>]]></description>
      <pubDate>Wed, 09 Apr 2008 15:33:45 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[IBuildings Blog: Multithreading in PHP with CURL]]></title>
      <guid>http://www.phpdeveloper.org/news/9892</guid>
      <link>http://www.phpdeveloper.org/news/9892</link>
      <description><![CDATA[<p>
As mentioned on <a href="http://devzone.zend.com/article/3341-Multithreading-in-PHP-with-CURL">the Zend Developer Zone</a>, there's a <a href="http://www.ibuildings.com/blog/archives/811-Multithreading-in-PHP-with-CURL.html">new tutorial</a> posted on the IBuildings blog (by <i>Lineke Kerckhoffs-Willems</i>) about performing some multi-threading magic in PHP with the help of cURL.
</p>
<blockquote>
Each PHP request is a separate thread. There are some workarounds like using pcntl_fork, starting multiple commandline php processes using the exec command or even using ajax. Another possibility is using the Curl library. Besides the basic functions described above Curl offers the "multi" functions for retrieving content from several url's at the same time.
</blockquote>
<p>
<a href="http://www.ibuildings.com/blog/archives/811-Multithreading-in-PHP-with-CURL.html">Examples</a> are included showing how to make these "multi" requests via <a href="http://www.php.net/curl">PHP's cURL support</a> (calling URLs with a "seconds" value on the end).
</p>]]></description>
      <pubDate>Tue, 01 Apr 2008 16:23:08 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Stoyan Stefanov's Blog: Simultaneous HTTP requests in PHP with cURL]]></title>
      <guid>http://www.phpdeveloper.org/news/9660</guid>
      <link>http://www.phpdeveloper.org/news/9660</link>
      <description><![CDATA[<p>
On his blog today, <i>Stoyan Stefanov</i> has <a href="http://www.phpied.com/simultaneuos-http-requests-in-php-with-curl/">a howto posted</a> on a trick he figured out to get a PHP script to grab data from multiple resources at one time - with cURL.
</p>
<blockquote>
The basic idea of a Web 2.0-style "mashup" is that you consume data from several services, often from different providers and combine them in interesting ways. This means you often need to do more than one HTTP request to a service or services. [...] Using the curl_multi* family of cURL functions you can make those requests simultaneously. This way your app is as slow as the slowest request, as opposed to the sum of all requests. And that's something.
</blockquote>
<p>
He <a href="http://www.phpied.com/simultaneuos-http-requests-in-php-with-curl/">includes example code</a> that loops through a given array of resources and executes the fetch, brining the results back into a result array. To illustrate, he also includes two types of examples of fetching content - one for GET and another for POST.
</p>]]></description>
      <pubDate>Tue, 19 Feb 2008 09:34:00 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[PHP in Action Blog: Tips for web testing]]></title>
      <guid>http://www.phpdeveloper.org/news/9619</guid>
      <link>http://www.phpdeveloper.org/news/9619</link>
      <description><![CDATA[<p>
On the PHP in Action Blog, there's a <a href="http://www.reiersol.com/blog/index.php?op=ViewArticle&articleId=11&blogId=1">this post</a> that shares some tips for testing your web applications with some simple tests.
</p>
<blockquote>
I just started listing the techniques I've learned when writing tests to exercise the web interface of a PHP application. This is from my experience and my personal preferences; it's not the final word or necessarily right for everyone.
</blockquote>
<p>He suggests:</p>
<ul>
<li>Use SimpleTest's Web tester if you can
<li>Test the web output using regular expressions
<li>Use element IDs or names to test links, forms and fields
<li>Log HTTP requests in the application
</ul>]]></description>
      <pubDate>Wed, 13 Feb 2008 08:09:46 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Brian Moon's Blog: Responsible use of the $_REQUEST variable]]></title>
      <guid>http://www.phpdeveloper.org/news/9466</guid>
      <link>http://www.phpdeveloper.org/news/9466</link>
      <description><![CDATA[<p>
In one of his <a href="http://doughboy.wordpress.com/2008/01/17/responsible-use-of-the-_request-variable/">recent blog entries</a>, <i>Brian Moon</i> takes a look at what he considers the "proper use" of the PHP superglobal $_REQUEST (as brought on by <a href="http://marc.info/?l=php-internals&m=119956617516891&w=2">a thread</a> on the PHP internals mailing list.
</p>
<blockquote>
I have seen more than one person make the following logic mistake: I may get data via GET, I may get data via POST - Ah, I should use $_REQUEST as it will catch both.
</blockquote>
<p>
<i>Brian</i> points out the error - cookies aren't in $_REQUEST so improper handling of those values could lead to cookie data overwriting GET/POST data from $_REQUEST. Several of the comments on the post also warn against improper handling of the values, noting that doing so could lead to holes open for attacks (like session fixation).
</p>]]></description>
      <pubDate>Tue, 22 Jan 2008 09:38:00 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Ligaya Turmelle's Blog: Streams Gem]]></title>
      <guid>http://www.phpdeveloper.org/news/8669</guid>
      <link>http://www.phpdeveloper.org/news/8669</link>
      <description><![CDATA[<p>
<i>Ligaya Turmelle</i> shine up and shows off a streams gem that she rediscovered - a simple method of sending a POST request and getting it's response:
</p>
<blockquote>
Was reminded today of a gem from the streams extension - sending a POST message and getting its results. We could do it using cURL or sockets - but why work that hard. Being lazy does have its advantages after all.
</blockquote>
<p>
The <a href="http://www.khankennels.com/blog/index.php/archives/2007/09/17/streams-gem/">example she includes</a> is one from the manual, showing how to take the array of data and push it out to the remote site with a few simple calls (including stream_context_create).
</p>]]></description>
      <pubDate>Mon, 17 Sep 2007 19:05:00 -0500</pubDate>
    </item>
  </channel>
</rss>
