<?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:18:14 -0500</pubDate>
    <ttl>30</ttl>
    <item>
      <title><![CDATA[Joshua Thijssen's Blog: Bloom Filters]]></title>
      <guid>http://www.phpdeveloper.org/news/17792</guid>
      <link>http://www.phpdeveloper.org/news/17792</link>
      <description><![CDATA[<p>
In <a href="http://www.adayinthelifeof.nl/2012/04/09/bloom-filters/">this new post</a> to his blog <i>Joshua Thijssen</i> describes something that can help when processing large amounts of data (like, in his example, the text of a book) to search through the information and find if a certain piece of data is in the set - a bloom filter.
</p>
<blockquote>
Most of my co-workers never really heard of bloom filters, and I'm continuously need to explain what they are, what their purpose is and why it's a better solution than other ones. So let's do an introduction on bloom filters. [...] Bloom filters have the property of being exceptionally fast AND exceptionally small compared to other structures but it comes with a price: it MIGHT be possible that our bloom filter thinks that an element is inside our set, when it really isn't. Luckily, the reverse is not possible: when a bloom filter says something is NOT in the set, you are 100% sure that it isn't part of the set.
</blockquote>
<p>
He explains how the filter works, noting how it's better for memory consumption and how it's possible for it to give a "maybe" response instead of ab absolute "yes" or "no". He also points out <a href="http://pecl.php.net/package/bloomy">a PHP extension, bloomy</a> that takes the hard work out of it for you.
</p>]]></description>
      <pubDate>Mon, 09 Apr 2012 11:13:32 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Design Aeon: Cake PHP Search Component]]></title>
      <guid>http://www.phpdeveloper.org/news/17762</guid>
      <link>http://www.phpdeveloper.org/news/17762</link>
      <description><![CDATA[<p>
On the Design Aeon blog there's a new post sharing a CakePHP component that can be used to <a href="http://www.designaeon.com/cake-php-search-component/">easily add searching</a> to your framework-based application.
</p>
<blockquote>
Cake Php Search Component is used to implement search in your cake php projects.The component provide highly reusability. component is meant to use across all the controllers. you just include this search component in your Controller and call a component function to fetch your conditions types in search form and refine the data .
</blockquote>
<p>
The component (available for <a href="http://www.designaeon.com/downloads/search.rar">download here</a>) is simple to install and full instructions for implementing it are included in the post - including it in the controller, creating search and pagination elements, making a controller action and finally making a view to tie it all together.
</p>]]></description>
      <pubDate>Mon, 02 Apr 2012 09:56:32 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[PHPClasses.org: PHP Zeitgeist 2012]]></title>
      <guid>http://www.phpdeveloper.org/news/17411</guid>
      <link>http://www.phpdeveloper.org/news/17411</link>
      <description><![CDATA[<p>
On the PHPClasses.org blog there's <a href="http://www.phpclasses.org/blog/post/172-PHP-Zeitgeist-2011.html">a new post</a> with a "<a href="http://www.phpclasses.org/zeitgeist/">zeitgeist</a>" they've generated from statistics on the site (such as search queries and overall popularity of packages).
</p>
<blockquote>
For those that are not yet aware of this probably because they only arrived to the PHPClasses site recently, PHP Zeitgeist is an initiative that aims to study what were the last year trends regarding what PHP developers have been searching for.
</blockquote>
<p>According to their results, some of the trends ramping up (or still going strong) for 2012 include:</p>
<ul>
<li>Social media sites
<li>Sites like Groupon, Foursquare and Bitcoin
<li>jQuery plugins
<li>Doctrine
<li>MODX
<li>SugarCRM
</ul>]]></description>
      <pubDate>Wed, 18 Jan 2012 10:04:24 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[PHPMaster.com: Practicing Regular Expressions with Search and Replace]]></title>
      <guid>http://www.phpdeveloper.org/news/17163</guid>
      <link>http://www.phpdeveloper.org/news/17163</link>
      <description><![CDATA[<p>
On PHPMaster.com today there's a new tutorial that <a href="http://phpmaster.com/practicing-regular-expressions/">shares a few regular expression tips</a> about doing some search and replace in your content.
</p>
<blockquote>
So how can you practice using regex if you are limited to just using them in your code? The answer is to use a utility, of which there are many, that uses regex for performing search and replace. I'm sure everyone is familiar with the standard "find x and replace it with y" type of search and replace. Most IDEs and text editors have built in regex engines to handle search and replace. In this article I'd like to walk through a series of exercises to help you practice using regex. 
</blockquote>
<p>
His examples are based on <a href="http://netbeans.org/">Netbeans</a> but can be used in just about any IDE that supports regex (or even just your code). He shows how to match word boundaries, do some grouping, work with back references and doing some search/replace based on multiple groupings.
</p>]]></description>
      <pubDate>Wed, 23 Nov 2011 14:27:59 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[php|architect: Full-text Search with SQLite]]></title>
      <guid>http://www.phpdeveloper.org/news/17128</guid>
      <link>http://www.phpdeveloper.org/news/17128</link>
      <description><![CDATA[<p>
On the php|architect site there's a recent tutorial from <i>Jeremy Kendall</i> about <a href="http://www.phparch.com/2011/11/full-text-search-with-sqlite/">full-text searching in SQLite</a>, a lightweight database alternative that, since it's stored locally, can be used without a full database server.
</p>
<blockquote>
Full-text search with SQLite is so ridiculously easy to implement, there are only two valid reasons you haven't done it yet. The first is you don't need the full-text capability, and the second is you didn't know it could be done.
</blockquote>
<p>
In his method he creates a full-text search table (using fts4) and populating it with your data. You can use the "MATCH" keyword in your SQL to find the closest matches and even handy modifiers like "NEARBY", wildcards and token/prefixes in queries. For more detailed information, check out the <a href="http://www.sqlite.org/fts3.html">SQLite documentation</a> for a full guide.
</p>]]></description>
      <pubDate>Tue, 15 Nov 2011 09:53:50 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[DZone.com: MySQL PHP search: four-part video tutorial series]]></title>
      <guid>http://www.phpdeveloper.org/news/17064</guid>
      <link>http://www.phpdeveloper.org/news/17064</link>
      <description><![CDATA[<p>
As linked to on DZone.com today, there's <a href="http://css.dzone.com/articles/mysql-php-search-four-part">a video series about PHP/MySQL</a> and creating a basic search engine from <i>Adam Khoury</i>'s <a href="http://www.youtube.com/user/flashbuilding">collection</a>:
</p>
<blockquote>
Fresh from Adam Khoury's <a href="http://www.youtube.com/user/flashbuilding">massive library of instructional videos</a> comes a four-part, full-fledged tutorial on searching a MySQL database using PHP. The tutorials use the 'worked example' format (like <a href="http://www.khanacademy.org/">Khan Academy</a>), which makes learning relatively painless for newbies and not completely useless for more experienced developers.
</blockquote>
<p>
The four videos require you to have at least a decent working knowledge of putting PHP and MySQL together and show you how to:
</p>
<ul>
<li><a href="http://www.youtube.com/watch?feature=player_embedded&v=yTudF1CAKY0">create/populate an example table</a>
<li><a href="http://www.youtube.com/watch?v=vBxcPOxRgeE&feature=player_embedded">build the frontend search form</a>
<li><a href="http://www.youtube.com/watch?feature=player_embedded&v=DVS4qoB98U8">use UNION and LIKEs to search the data</a>
<li><a href="http://www.youtube.com/watch?v=HnmEMiI1YvY&feature=player_embedded">using the FULLTEXT searching in MySQL to find more accurate results</a>
</ul>]]></description>
      <pubDate>Mon, 31 Oct 2011 13:09:29 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Sameer Borate's Blog: Grabbing the referrer search engine keywords for a site]]></title>
      <guid>http://www.phpdeveloper.org/news/17009</guid>
      <link>http://www.phpdeveloper.org/news/17009</link>
      <description><![CDATA[<p>
On his blog today <i>Sameer Borate</i> has a new post with a handy bit of code you can use to <a href="http://www.codediesel.com/php/grabbing-the-referrer-search-engine-keywords-for-a-site/">find the keywords from a search engine referral</a> to help with tracking how visitors have come to your site.
</p>
<blockquote>
A couple of weeks back I had to write a solution for a client to track the referrer search engine from where the user came to his sites contact page, without using Google Analytics. If a user was to fill the contact form on the website, the referring search engine name and the keyword for which it was refereed was to be emailed along with the contact information. The following is a solution for the same.
</blockquote>
<p>
The code itself is pretty simple - it checks the $_SERVER['HTTP_REFERER'] and, based on an array of search engine types, looks for a certain "query" keyname in the URL and matches what follows (with <a href="http://php.net/preg_match">a regular expression</a>). This can be useful for not only determining what sort of audience is visiting your site, but could also be used to present a custom message to visitors from certain search engines (or, more complicated, to show different content based on search terms).
</p>]]></description>
      <pubDate>Tue, 18 Oct 2011 13:25:27 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Superdit.com: Google Web Seach With ExtJS Grid and PHP]]></title>
      <guid>http://www.phpdeveloper.org/news/16695</guid>
      <link>http://www.phpdeveloper.org/news/16695</link>
      <description><![CDATA[<p>
From Superdit.com there's a tutorial showing you how to <a href="http://superdit.com/2011/01/24/google-web-seach-with-extjs-grid-and-php/">display search results in an ExtJS grid</a> as pulled from Google's API. The article's from the beginning of the year, but it's a good self-contained example of using <a href="http://www.sencha.com/products/extjs/">ExtJS</a> to automatically pull in data produced from the backend.
</p>
<blockquote>
This time I want to make a simple example in displaying google web search result in ExtJS grid, other ExtJS component that can be used to displaying this result is dataview, but grid is more common in displaying data in ExtJS.
</blockquote>
<p>
The code (downloadable <a href="http://www.box.net/shared/iyf2x8or8h">here</a>) is pretty simple and the full CSS, Javascript, PHP and markup you'll need are included. The PHP pulls the results from the Google API and </p> JSON encodes them for loading into the ExtJS grid. You can see the <a href="http://superdit.com/wp-content/uploads/2011/01/screenshot.png">end result here</a> or <a href="http://demo.superdit.com/ext_php_google/">try out a demo</a>.
]]></description>
      <pubDate>Tue, 09 Aug 2011 12:45:27 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Martin Sikora's Blog: Google Chrome Extension: PHP Ninja Manual]]></title>
      <guid>http://www.phpdeveloper.org/news/16566</guid>
      <link>http://www.phpdeveloper.org/news/16566</link>
      <description><![CDATA[<p>
In a new post today <i>Martin Sikora</i> has <a href="http://www.martinsikora.com/google-chrome-extension-php-ninja-manual">points out a Google Chrome extension</a> he's created that lets you view some of the basics of the PHP manual without leaving the browser.
</p>
<blockquote>
Finally, I released my extension for Google Chrome called <a href="https://chrome.google.com/webstore/detail/clbhjjdhmgeibgdccjfoliooccomjcab">PHP Ninja Manual</a> (Ninja - because I like <a href="http://www.kaushik.net/avinash/">Avinash Kaushik</a>'sblog and he always call people who are very skilled in something as "Ninjas"). I was always lazy to open PHP documentation every time I had to look at some method definition and its parameters so I made this extension which is actually preparsed official PHP manual available instantly in a popup window.
</blockquote>
<p>
You can see a screenshot of it in action <a href="http://www.martinsikora.com/web/uploads/assets/chrome-extension-php-ninja-manual.png">here</a> including the auto-complete searching and the example of the function's summary details. If you try it out and have feedback, go over to <a href="http://getsatisfaction.com/php_ninja_manual">the forum</a> for it and leave your comments.
</p>]]></description>
      <pubDate>Fri, 08 Jul 2011 09:38:23 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[DZone.com: Solarium PHP Solr client]]></title>
      <guid>http://www.phpdeveloper.org/news/16160</guid>
      <link>http://www.phpdeveloper.org/news/16160</link>
      <description><![CDATA[<p>
New on DZone.com today there's an article from <i>Bas De Nooijer</i> talking about a new tool he's created to allow <a href="http://css.dzone.com/news/solarium-php-solr-client">PHP to work directly with Solr</a> (the popular searching platform from the Apache project) as a result of research he'd done from a <a href="http://blog.raspberry.nl/2010/07/20/integrating-solr-with-php/">previous article</a>. The result is < href="https://github.com/basdenooijer/solarium">Solarium</a>, an open sourced PHP client for Solr.
</p>
<blockquote>
I've worked on a lot of Solr implementations in PHP applications. There are multiple solutions: manual HTTP requests, the solr-php-client library, custom implementations etcetera. However they all have one issue in common: they only handle the communication with Solr, many other important parts like query building are not covered at all. And the parts that are covered are usually over-simplified. [...] At first I developed it as a library for my own projects, but I've decided to turn it into an opensource project. The project is called 'Solarium' and can be found on github: <a href="https://github.com/basdenooijer/solarium">https://github.com/basdenooijer/solarium</a>
</blockquote>
<p>
You can find complete details about the project over on <a href="http://wiki.solarium-project.org/index.php/Main_Page">its wiki</a> including basics concepts of query flow and using the ping/select/update query methods to access your Solr server.
</p>]]></description>
      <pubDate>Thu, 07 Apr 2011 10:09:31 -0500</pubDate>
    </item>
  </channel>
</rss>

