Looking for more information on how to do PHP the right way? Check out PHP: The Right Way

Christian Scheb:
Introducing Tombstones for PHP
Sep 17, 2015 @ 12:49:23

Christian Scheb has posted about an interesting idea in this article on his site - creating "tombstones" in your application to help you determine what code in your application is "dead".

Earlier this year I took over that project at my new company. [...] The repository was cluttered by many files, that could assumed to be dead code. Unfortunately, you never know. [...] The mission was clear: Cleaning up the project, without breaking things.

[...] I searched the web and came across that interesting concept of tombstones. If you haven’t heard of tombstones yet, I highly recommend this article and watching the video of David Schnepper’s ignite talk. A tombstone is basically an executable marker in your code (in the PHP world: a function call), which is placed in fragments of code, that you’ve assumed to be dead. Then, everything is deployed to production and, when a tombstone is invoked, it writes some data to a log. After a while, the logs will enable you to identify dead and undead code (called “Vampires”) in your project.

Not finding a good tool to help with this in an existing codebase, he created a library that makes it simpler to both mark the "tombstones" in your code and another to analyze the results. He includes an example of what the report might look like, showing both the used and unused bits of code where the tombstone code was placed.

tagged: tombstones dead code library analyzer marker

Link: http://www.christianscheb.de/archives/717

Zend Developer Zone:
Implementing a Stemming Analyzer for Zend_Search_Lucene
Oct 22, 2008 @ 14:11:25

On the Zend Developer Zone today there's a new tutorial posted that shows how to use the Zend_Search_Lucene component of the Zend Framework to create a stemming analyzer.

The Zend implementation of Lucene provides a powerful tool set for those looking to implement a Google-like search for their PHP web application. One of the requirements in creating a Google-like search with Zend is the creation of a stemming, stop word filtering, lower-casing analyzer. This article will briefly discuss the basic role of an analyzer in the Lucene API, my implementation of a new "StandardAnalyzer" for the Zend_Search_Lucene component of the Zend Framework, the inner workings of this analyzer, and its basic usage.

It talks about the creation of an analyzer - a tool that splits out words, removes some of the most common and standardizes the contents (like making it all lowercase such as the StandardAnalyzer in Java's Lucene does). The author has come up with his own implementation in PHP and works through it, explaining how it works and where to put the data and language files it would need to pull from.

tagged: implement tutorial zendsearchlucene analyzer java lucene