I'm a huge fan of Phing and use it regularly for build and deployment tasks. Often, I'll ask about a plugin that I wish existed, and get a very courteous "patches welcome" from the nice people in the #phing channel on freenode. This has happened a few times, so I thought I should probably look at how to make a new phing plugin, this article shows you how to make the simplest thing I could think of: a simple "hello world" plugin. Continue reading
I upgraded PHP and related pecl modules on my development machine today, and ran into a problem with Gearman. Actually I ran into more than one! Firstly the challenge of getting the newest pecl version working with a gearman version. Then an error where my existing PHP application couldn't connect to gearman after upgrade.
If you're interested in becoming a Zend Certified Engineer and are local enough to make it to the next PHP North West User Group meeting on Tuesday, 5th March in Manchester (UK), then come along! I'll be giving a talk and welcoming questions and discussion around becoming ZCE, why you might bother, what is involved, some tips for the exam itself, and pointers to resources to help you (yes the slides will be online afterwards, check the "resources" section on my site on Wednesday ish).
The details are on the Upcoming page for the event, see you on Tuesday 5th!
I'm delighted to announce that my new book "PHP Web Services" is now available as an early release! This is a project that I've been working hard on for the last few months, trying to put my extensive and hard-won experience of working with APIs into words and examples to make it easy for others to get up to speed in this area.
I am pleased to announce that I'll be presenting one of Zend's webinars in February, on Tuesday 19th. The topic is "The PHP 5.4 Features You'll Actually Use", and the session is my opportunity to round up the best of the new features that came in with PHP 5.4 and illustrate the ones you'll want in your codebase with some examples. You can find out more about the session and register for the webinar on Zend's site: http://www.zend.com/en/company/news/event/1188_webinar-the-php-5-4-features-you-will-actually-use.
See you there!
Quick post because this tripped me up the other day: When you use a vanilla ubuntu 12.10 "Quantal Quetzal" installation, it will come with PHP 5.4, which is excellent news. However the default php.ini doesn't set the timezone, so you will see an error like:
It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier.
These have been warnings in earlier versions of PHP, but as of PHP 5.4, the
date.timezone ini setting must be set correctly, using the continent and place - for me that's "Europe/London", like this:
date.timezone = "Europe/London"
If you see these errors, don't panic, just add the line above to your php.ini.
In case you haven't been following, FOSDEM is a Free Software/Open Source weekend event held every year in Brussels - it's free to attend and it's huge! It's actually a network of smaller events, and this year that includes a whole day of PHP on the Saturday (2nd February 2013). Our schedule is excellent, taking in frameworks, extensions (tutorial from Sara Golemon!), nginx, APIs and a few other goodies. Also, this lovely one-day PHP conference is in the wider context of an event that is packed full of otehr excellent open source technology sessions - see the full schedule for what else is on offer. I love these open source events for the opportunity to dip into not-PHP topics, and I hope to see you in Brussels! Come along, be geeky, and bring your friends :)
A few people have told me it's their New Year's resolution to become a ZCE this year, and I'm sure they're not the only ones. I regularly help developers and teams prepare for ZCE, so I thought I'd make up a mini package of tips, tricks and a full set sample questions with solutions and explanations, for anyone who won't be taking a whole preparation course. The package costs 25 USD (that's about 15 quid if you're local!), you can click on the button below to buy it, and/or keep reading for some of the tips (also included in the package).
This post forms part of a series of articles about using PHP to do objected oriented programming, or OOP. They were originally published elsewhere but are no longer available at that location, so I'm reposting them here. Previously in the series was an introduction to OOP in PHP, in two parts
The title is a bit of a red herring as PHP has more than 9 magic methods, but these will get you off to a good start using PHP's magic methods. It might be magic, but no wands are required!
My shiny new VPS* runs Ubuntu 12.10 (official subtitle: Quantal Queztal. Local nickname: Quirky Kestrel) and therefore has PHP 5.4 installed. It's very new so every command I type is missing, and today I realised that included a PECL module (pecl_http, of course). So I
aptitude install php5-pear and then get tangled in dev packages (clue: look which libcurl you have already installed to figure out which of a long list of
-dev packages to choose), managing finally to emerge with a
pecl install http that completes successfully with the words:
configuration option "php_ini" is not set to php.ini location
You should add "extension=http.so" to php.ini
I've been using Ubuntu for some time however, and we don't put settings straight into
php.ini, there's a directory called
/etc/php5/conf.d/ where all the various module configurations live, or you can enable things just for when PHP is called by apache or from the CLI. However today I hopped into
/etc/php5/ and saw this:
mods-available ? Continue reading