Simsi - 11:07 am on Sep 26, 2012 (gmt 0)
Otherwise someone can link to a page with a URL like www.example.com/search.php?q=VERY_BAD_WORD and there you have it - your search page now has an inbound link with VERY_BAD_WORD in the anchor
But surely someone could link to *any* page of your site with .php?VERY_BAD_WORD in the URL? And as your search will probably return "No results found for VERY_BAD_WORD" Google would/could see that it's not relevant to your site anyway so I would have thought this doesn't matter myself.
Also the Canonical will truncate the page URL at .php anyway so you are doubly telling Google the VERY_BAD_WORD isn't relevant. Now, what Google does with that of course is in the lap of the Gods lol.