The Bakery: Four New Articles - Load Balancing, Request Info, UUID Behavior & Upload Thumbnails
456470
The Bakery has four new items posted today including articles looking at load balancing, the Request component and UUID behavior in your CakePHP application.   Load Balancing and MySQL Master and Slaves - If you are currently using MySql master/slave replication for load balancing and wish to transport to cakePHP, it really couldn't be easier. Request Information Component - Need more insight into how a controller structures a CakePHP request? This little component will log important information and variables for each request to your application's debug log. Uuid Behavior - I have a requirement to use UUID's as primary keys. I was initially using MySQL triggers to call uuid() on insert but in the end decided a behavior makes more sense. This behavior adds a UUID to the field specified in your models. Improved Upload Behaviour with Thumbnails and Name Correction - This is an improved version of Chris Partridge's upload behaviour (http://bin.cakephp.org/saved/17539). The behaviour is able to generate thumbnails if used for images (JPEG/PNG only).    CakePHP users can check out these and more great articles, tutorials and more on The Bakery.
276807
About two weeks ago I received a call from my friend Brian Smith of SingleFeed and Comparison Engines for some feedback on the addition of new and customized attributes to the Google Base (Froogle) shopping feed.  Brian covered these attributes on his SingleFeed blog but he did not get deep into what these attributes can [...]
584229
Popular posts from PHPDeveloper.org for the past week:Reinhold Weber's Blog: 40 signs you really are a lousy PHP programmerScott Klarr's Blog: PHP Cheat SheetsDeveloperTutorials.com: Building Desktop Applications in PHPPadraic Brady's Blog: The Zend Framework and Microformats: Zend_Microformat ProposedCommunity News: GoPHP5 Project Wraps UpJob Posting: Technology Resources, Inc Seeks Senior PHP Developer (New York, NY)Job Posting: Red Ventures Seeks Sr. Systems Analyst/Web Developer (Charlotte, NC)Community News: Forage - A Search Abstraction LayerCommunity News: php|architect Launches C7Y Site (News/Podcast/Forums)Richard Heyes' Blog: SMTP for PHP 5
84402
The Bakery has five new items they've recently posted - a few new articles, helper information and tutorials. Here's the list:   CSV Helper - I was recently outputting some comma-delimited data and thought I would benefit from a simple csv helper p28n, the top to bottom persistent internationalization tutorial - For some developers, allowing a website to support multiple languages is essential. Luckily cakePHP 1.2 has the foundations available to make this possible. Tracking navigation history of a user - Many times it can be very useful to track the navigation history of a user. [...] With this HistoryComponent, it's extremely easy to handle such actions. Habtm hacks to menage columns in both models - I had a habtm relationship between two models and when i did a "findall" in a model i couldn't filter the rows with a clause from the the other model. SecureGet Component - I am not pretending this can replace ACL or more complex implementation, it's just a small component, inspired a bit from the Security component.   If you're a CakePHP developer, you'd do well to check out The Bakery for these and more great Cake-related articles, tutorials and information.
257024
The Bakery (for the CakePHP framework) has several new articles/helpers/components they've posted about lately - here's the list:   CakePHP on IIS Yahoo! Weather Component ACL Management Plugin Visualize - Generate a graphic of your models/tables Tree Helper New Year, New Beta   Check out The Bakery for more information on these and other great CakePHP-related items.
453669
In light of the popularity of his WebThumb site thumbnailing service, Joshua Eichorn is implementing a new feature to help reduce the number of requests to the server. The most popular request is made to see if a thumbnail is ready, and the new feature - a GET callback to the server making the request - will help to reduce them.    If you wondered an API that requires polling isn't a very good thing for scalability. On my current setup I can pretty easily handle about 20 status requests per second on top of my normal traffic, the problem is its not hard for a bad polling implmentation being run by one user to make that many requests.   To solve this problem im adding an addition to the Webthumb API that will allow you to skip polling all together. The basic idea is that your make an API request and when your thumbnail is complete i'll make a GET request back too your server telling you that the request is complete.    It's a simple matter of including a new "notify" tag in the XML message to the server with a URL to make the callback to. He even includes some sample PHP code to get you started with the new feature. The script handles the automatic download of the thumbnails when called from the WebThumb service.
767454
PHP Magazine has a new posting today about an article from WebProNews.com concerning a new article - Generate HTML Files With PHP To Reduce The Server Load.
282970
Over on Dynamically Typed today, there's a new posting from Harry concerning Flickr (the image hosting service) and how they use PHP to enhance this service.
583590
The trials and tribulations of application dependency in a virtualized, hosted world.
674304
Mike Wallner has thrown together some stats for the latest edition of the pecl/http package to test its response performance.   The results surprised me, because it clearly shows that the performance drop for starting the PHP engine and doing the neccessary negotiation to provide caching is not that bad.   There's a chart of the results as well as a full PDF with all of the stats the graph maps out. He includes the legend to make the graph easier to understand.
632361
The Bakery has a few new articles, helpers, components - even an event posted including:   Want to order your SQL Persian Date Helper Using equalTo Validation To Compare Two Form Fields CakeFest: 2008-02-06, Orlando, FL Asset Mapper Modified Preorder Tree Traversal Component Ajax elements available anywhere Bindable Behavior: control your model bindings   Keep an eye on The Bakery for more great CakePHP-related content.
360849
On the Zend Developer Zone today, there's this new tutorial that looks at making the move from PHP4's object-oriented programming up to the "more complete obejct model of PHP5" - specifically with the Decorator design pattern.   While working on a project I realized one particular solution was a pretty good way to demonstrate the decorator design pattern together with some of PHP5's features, including abstract classes, interfaces, type hinting, the final keyword and the visibility of properties and methods. This article is intended for those of you who, like myself, are moving from object-oriented programming, including some use of design patterns, in PHP4, to the more complete object model of PHP5.   He sets up a scenario about the development of an online pizza ordering system to show how to "decorate" a pizza with each of the toppings on a list (instead of having to list out every pizza in every possible topping combination). Of course, all of the code is included and explained so you understand exactly what's happening. Finally, there's a demonstration of its usage - a simple call that grabs the stock level/name/cost of each of the items in stock (pizza combinations).
313520
In a follow-up to a previous blog post, Alexey Zakhlestin shares a few more thoughts on the project and the proper object hierarchy's going for.   actually, I changed it completely 3 times already in my thoughts. I finally "see the light"(tm) and will implement it on a weekend. I think about converting SCGI-part to a simple "driver" and move all http-related stuff to a separate driver-agnostic set of classes. This way, I would be able to implement FastCGI as anther driver without altering applications. If you have any better ideas - let me know.   He also includes a link to another sample application that uses the functionality to create a pie chart (including some benchmarks) with the help of the eZ components framework.
275233
In my last blog post, I mentioned the work on rubinius (then at a 0.7 release and now at 0.8) and JRuby.  I also promised I&#8217;d follow up on them.  Here&#8217;s what&#8217;s been going on so far.
133151
Sandro Groganz has a quick note posted on his blog about the online availability of the text of his article "PHP 5 Enterprise Edition".   I just found that my article entitled "PHP 5 Enterprise Edition" is now available online. It has initially been published in the International PHP Magazine.   He quotes a bit from the introduction to give you an idea of what the article's about, but defers the rest of the article to the International PHP Magazine website. There's lots of good content, screenshots, layouts and plenty of related links as well.
647066
DevShed has posted the second part of their (three part) series looking at the construction of a blogging application in PHP5. In this part, they look at how to handle the user's desire to input entries into the application via a HTML form.   In this second installment of the series, I'll show you how to expand the initial functionality of the already familiar "BlogProcessor" class so that it is capable of addressing all these (displaying all the entries, show the insert/update forms) issues.   They start with the simplest of the group - the displayBlogs method, outputting the full contents of the entries for the blog. Things get a bit tougher with the next step - creating the insert and update forms for pushing content into the database. Finally, they defined the header and footer functionality to make setting up the structure of the page simpler.
675185
In a new entry on his blog today, Marco Tabini introduces us to 5 PHP Performance Tips that we "probably don't want to hear".   I thought it might be interesting to write an article about the performance-enhancing tips you probably don't want to hear about - that is, those that are most likely to produce measurable (and durable) results but do require some effort on your part.   His list consists of:  You Don't Need To Plan Ahead In Order To Have A Plan Combat Database Abuse Do You Really Need A Database Anyway? Scale Horizontally Refactor To Scale Vertically  For each, he explains the title and gives a bit of validation to the point. There's some great mentions of tools that you can use to help accomplish them too - a profiler, the Lucene and Xapian full-text databases, and Lustre.