How to explicitly password-lock an iPhone regardless of timeout setting? Can I explicitly lock the iPhone, so that it needs a passphrase to unlock?

I want to instantly lock the iPhone and not be waiting until "Require Passcode" (currently at 1 hour) kicks in. 

Basically I want the iPhone to automatically lock after an hour, but if I want to lock right now, to do that easily.
There are 2 types of locking mechanism (certainly in iOS 5 and iOS 4.2.1).

Firstly, in Settings > General there is Auto-Lock, with settings of 1-5 minutes, or Never.

Secondly, same place, there is Passcode Lock, which if set has options of Immediately, after 1, 5, 15 minutes, or 1, 4 hours.

The first of these locks your screen after a period of inactivity (for the purposes of saving battery hence the max of 5 minutes), but the second refers to the amount of time that must pass after the screen it locked before the passcode is required to unlock (for the purpose of security).

A common mistake it to confuse the two, and the wonder why it does (or doesn't) ask for your passcode each time.  You might have the auto-lock set to 5 minutes, thinking it is the correct setting, leaving the passcode lock to immediate which is the default.  This is why you might need to re-enter your pin even if you try it only seconds after locking when you think it's set to 5 minutes.

To go back to the original question, without your passcode lock being set to immediate, there is no way to immediately lock your phone without waiting for whatever setting you have got instead.  It would be nice if something like a double tap on the power button when locking did it, or if holding it down to get the slide to power off screen also had a slide to lock now section, and I may well head over to Apple feedback now to suggest same, but to answer the OP question directly and finally, the answer is no.