Posts

Showing posts from 2013

Top Trending Stories in IT

10 Golden Rules of Project Risk Management: http://www.projectsmart.co.uk/pdf/10-golden-rules-of-project-risk-management.pdf 5 Essential Characteristics of a Project Manager: There are lots of different types of project managers in the world and they all approach their jobs in a different way. I have worked with a wide variety of different sorts of people in this role and feel that there is no classic project manager stereotype which I could try and shoehorn them all into. However, they also tend to have some very clearly defined characteristics in common, and by looking at the most importance of these it is clear that you need certain qualities to survive and prosper in this job. 1. A Good Sense of Organization Not every project is going to involve a busload of team members and an eye-watering budget. The same sorts of rules can be applied to every project though, and if you can run a small project in an organized manner, than a big one shouldn’t be a problem either. Pers...

File upload progress meter for PHP 4, at last!

The story of the PHPClasses site and the forms class - Form file upload progress meter - File upload progress meter for PHP 4 - Upload progress meter plug-in - Merry X-mas and Happy New Year This year has been very intense in terms of PHP developments, at least for me. I could talk about the the upcoming premium services, that are almost ready for launch. I could also talk about several PHP conferences that I have attended as a speaker. But no, I have already talked a lot about those subjects in previous posts. In this end of year post, I will be talking about a single PHP class. Not just any class, but the class that made me create the PHPClasses site: Forms Generation and Validation. http://www.phpclasses.org/formsgeneration But let me tell you why this class is so important to PHPClasses site and also tens of thousands of PHP developers that use it. - The story of the PHPClasses site and the forms class I have started working with PHP around 1997, still in the PHP 2 beta days. I us...

PHP killer feature - Streams abstraction

PHPClasses site activity on Twitter Before proceeding to the main topic of this post, I would like to keep you up with an experiment that I am carrying on with the PHPClasses site. Nowadays, I hardly have time to do everything I wanted, I have even less time to keep watching on the activities of my friends. So, I always questioned the interest of micro-blogging platforms like Twitter. http://twitter.com/ Micro-blogging platforms can send short messages to mobile phones or instant messaging programs when a Twitter account is updated with new entries. A couple of weeks ago, a personal friend of mine started an experience with Twitter. He has popular blog about arts and culture. So, he started adding entries about the latest posts and comments submitted to his blog. Surprisingly, a lot of users started following his blog Twitter entries. This made me wonder if there is enough interest on the part of the PHPClasses site community to follow the latest activities of the users on the site. T...

Importing data from CSV file into PHP applications

Introduction Did you know there are data exchange formats besides XML? If the data to exchange is flat, i.e. is not in an hierarchical structure, CSV (comma separated values) format is a good candidate format to import or your export your application data. You can find out more about CSV format in Wikipedia: http://en.wikipedia.org/wiki/CSV * Importing data from CSV files Since we have lines of values separated by commas, the easiest way to process them is to parse each line using the PHP explode() function: <?php $arrResult = array(); $arrLines = file('data.csv'); foreach($arrLines as $line) { $arrResult[] = explode( ',', $line); } ?> * Dealing with special characters This simple solution will not work if you have a comma in a value, like for instance when the column is an address and it has a value is like "Obama street, 1". In such cases, the column value in the CSV file is quoted to indicate that the data between quotes should be read as a single co...