Here's what was popular in the PHP community one year ago today:Brian Swan's Blog: Creating PHP Websites with WebMatrix
Michael Feichtinger's Blog: HTML5 WebSockets Example
Project: PHP on Android
SitePoint.com: WordPress in the Cloud with Amazon EC2 and the Microsoft Web Platform
ServerGrove Blog: Symfony + Git + Capistrano = Capifony
Security Musings: PHP: Please Hack Pal.
ThinkPHP.de: Import and export data using PHPExcel
This is the 2nd part of my adventures through the Horde authentication code. As promised, I'm covering transparent authentication and verification of existing authentication this time.
Quality Assurance has become an increasing important part of web application development, especially with PHP applications. When I look back in history it was common people just deployed web apps and tested it with a browser on the production server. We all know this process couldn't cover all possible user interactions and many bugs were reported back by end users the days after the deployment of a new release.Luckily there are a lot of tools available that allows you to increase quality of these web...
When I seriously started with test driven development and had way lesser experience in object oriented programming (OOP) than today, I always thought that this modifiers are more cumbersome than helpful. Over the time I learned about the principles of OOP and realized the necessity of modifiers. But still in terms of unit testing they are sometimes in the way.
In this new tutorial from Tutorialzine.com, Martin Angelov shows you how to combine a bit of PHP, CSS3 and HTML to create a more functional "About" page for your site that shares contact information in multiple formats.In this tutorial, we will be creating a simple about page that is powered by PHP, HTML5 and CSS3. It will present your contact information to your visitors, with an option for downloading it as a vCard (useful for importing it in third party applications). You can use today's example as a...
Chances are by now you've heard about some of the NoSQL document-based database alternatives to the usual RDBMS systems like MongoDb or CouchDb. In this recent post there's an introduction helping you get started with PHP and MongoDb.Web development industry is moving so fast and new solutions like NoSql is getting popular day by day. Most of the web developer and software engineers are familiar with db like Mysql.And there are specific use cases when to MongoDb and when to use Mysql. You can check this...
In a recent post to CodeForest Luka Peharda shows you how to create a JSON-RPC frontend for your application based on the Zend Framework.XML-RPC rules, but the amount of data it generates is its big disadvantage. This is where JSON-RPC steps in. Data it generates is significally smaller, but this isn't suprising as JSON is known as fat free XML.This articles is based on my earlier Android XML-RPC article. Its PHP code and Zend Framework setup will be used so you should go through it if you haven't...
On PHPBuilder.com today Jason Gilmore offers some performance tips to make highly optimized code without having to use something like HipHop to get closer to the speeds you might need.While HipHop may seem a rather esoteric solution to the performance problem, a method lies within the perceived madness; maintaining the website logic using PHP code allows Facebook to maintain a code base which remains accessible to a larger number of developers, with the added bonus of being able to deploy blazing fast...
On PHPClasses.org there's a new post reviewing a book from Packt Publishing, "PHP 5 CMS Framework Development" (a second edition) by Martin Brampton.In this review I focus on the changes between the editions of the book, which are brief and objective, since the core of the work remains the same and with the same quality. [...] In sum, I recommend reading this book to those looking forward to improve their skills in PHP, or intend to create new frameworks. To put it simply, a good book to read, and with...
Today the new 0.9.0 release of vfsStream was shipped to our PEAR channel. This release ships with a new feature that allows (unit) test scenarios which make use of file access time and file attribute modification time. While there is no restriction on usage of the file access time, support for file attribute modification time is still quite limited due to the fact that PHP's stream wrapper do not support changing file attributes via chmod(), chown() and chgrp(). However, this might change with PHP 5.4...
Simple Form Creator
Convenient filter interface
File Manager S3
PHP Megaupload.com Class
papaya CMS got a new class PapayaObjectCallbacks recently. The class can be used to define and handle callbacks for other classes and relies heavily on the magic methods. It addresses several problems.
Code duplication if you have several callbacks in one class
Validation before you can use the callback
Easy to use, self speaking API for callbacks
PapayaObjectCallbacks is defined as a sub object with lazy initialization. An array is used to define the callbacks functions and the default return value....
Most of the time remote scripts are included at the end of an html document, right before the closing body tag. This is because browsers are single threaded and when they encounter a script tag, they halt any other processes until they download and parse the script. By including scripts at the end, you allow the browser to download and render all page elements, style sheets and images without any unnecessary delay. Also, if the browser renders the page before executing any script, you know that all page...
Authentication in Horde is complex. Very complex. To help you (and myself) to understand how exactly authenticating to Horde works, I tried to dissect the processes involved.
In a new post on his blog Timothy Boronczyk has a recommendation for developers working in PHP with databases that have a "fetch object" method - use it correctly or avoid it all together.Lately I'm finding a lot of instances of the mysql_fetch_object() function being used in a particular codebase I help maintain. Unfortunately, I've yet to see it used correctly. It always seems to be used to retrieve a stdClass object from a query result where mysql_fetch_array() or mysql_fetch_assoc() would be the more...
Bence Eros has put together a new post to his blog looking at some of the results he's found from performance testing the use of getters and setters in PHP.The usage of getter and setter methods instead of public attributes became very popular in the PHP community, and it's going to become the standard coding convention of so many PHP libraries and frameworks. On the other hand many developers - including me too - strongly unrecommend such convention, because of its performance overhead. I wanted to make...
In this new post to his blog, Gonzalo Ayuso compares two technologies that can make working with databases in your applications simpler - PDO and the Doctrine2 DBAL layer.In fact DBAL isn't a pure database abstraction layer. It's built over PDO. It's a set of PHP classes we can use that gives us features not available with 'pure' PDO. If we use Doctrine2 we're using DBAL behind the scene, but we don't need to use Doctrine2 to use DBAL. We can use DBAL as a database abstraction layer without any ORM....
The Voices of the ElePHPant podcast has posted its latest episode, an interview with Chris Spruck, the head of the Atlanta PHP User Group.Cal asks Chris three questions about user groups and their dynamics.
What's been your biggest success in the Atlanta PHP User Group?
How do you keep your members interested in the group and its topics?
What has been the best part about being a part of a user group for you?
You can listen to this latest episode via the in-page player, by downloading the mp3 or by...
Lorna Mitchell has a quick reminder about an issue in the new joind.in API version - everything was being returned as strings, even integers.A few weeks later (my inbox is a black hole and it takes a while to process these things) I fell over a throwaway comment to an undocumented constant JSON_NUMERIC_CHECK, and I added the constant name to my todo list. In the time it took for me to actually get around to googling for this, some wonderful person updated the PHP manual page (this is why I love PHP) to...
Latest PECL Releases: