Talking about ZCE at PHPNW March

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!

Zend Webinar on PHP 5.4: 19th February

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!

PHP 5.4 Timezone Error Message on Ubuntu

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.

PHP at FOSDEM 2013

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 :)

Become a ZCE in 2013

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).

Buy Now
Continue reading

9 Magic Methods in PHP

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!

Continue reading

Managing PHP 5.4 Extensions on Ubuntu

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:

.
├── apache2
├── cli
├── conf.d
└── mods-available

Hmmm ... mods-available ? Continue reading

A Little More OOP in PHP

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.

This post follows an earlier entry introducing the basics OOP and what that looks like in PHP. This time around we'll look at some more advanced concepts and some more practical examples of building code, covering use of constructors and how to add access modifiers in to control how calling code can operate on your objects. We'll also show off how to create static methods and properties and, perhaps more importantly, illustrate applications of these features.

Continue reading

PHP at FOSDEM: Call for Papers

There's an excellent open source conference that happens every year in Brussels in February, called FOSDEM. It consists of some main tracks, plus a series of sub-rooms, where various technical communities are given some space to use for whichever talks they choose; the schedules are centralised so that people can pop in and visit any talks in any room that looks interesting. This year, for the first time, this includes a "PHP and Friends" room - I'll be organising this and I'm looking for your input, please.

Basically, we need to get some great submissions, so that when we come to choose the schedule (and it is only one track, one day, there's only a few slots available), we can put together something really fitting to showcase PHP for a wider audience than a PHP conference. Selection will be done on the basis of talk topic, abstract and length in the first instance - we'll only take into account the actual speakers when we're curating the final list.

Key things you need to know:

  • link to call for papers form (google forms)
  • Event is 2nd (and 3rd, but the PHP room is on the 2nd) of February 2013, at ULB campus Solbosh in Brussels, Belgium
  • No expenses will be covered by the event
  • There's also a Call for Stands if you have a project that you would like to represent there
  • If you're not speaking, come and join us anyway!