If PHP Were British

cancel2 2022

Canceled
When Rasmus Lerdorf first put PHP together, he - quite sensibly, despite his heritage - chose not to write it in Greenlandic or Danish. Good job too - that would have been rather unpleasant to work with. He opted instead, being in Canada at the time, for the local tongue. No, not French - that bastard dialect of the Queen's English commonly referred to as "US English"[SUP]1[/SUP].
PHP developers in Britain have been grumpy about this ever since. What was he thinking? And more importantly, how do we undo this travesty? How do we developers ensure the traditions of the British Empire continue to be upheld, even in the digital age?
[h=3]A Slap in the Face[/h]

  • $variable_name


The first, but maybe the most important, of many changes that will allow PHP to achieve a more elegant feel is to remove that symbol so beloved by the US and replace it with something altogether more refined. More solid. More ... sterling.




  • £variable_name


[h=3]Getting Started[/h]

  • <?php
  • echo 'Hello World!';
  • ?>


How many of today's British programmers have been put off at the outset by the brazen informality of this simple yet obscenely Americanised program, colloquially referred to as "Hello World"? A more Imperial, formal introduction might encourage a greater proportion of young British talent to remain with the language and thus give the broader community a more urbane air.


  • <?php
  • announce 'Good morrow, fellow subjects of the Crown.';
  • ?>


[h=3]Abbreviations[/h] Few things are more abhorrent to the British than unnecessary abbreviations. "Text speak" is unheard of on the streets of London, as the natural ingrained British grammarian simply refuses to stoop to sending messages of the "c u soon traffic kthxbye" variety, instead proferring something altogether more elegant: "Dear Sir/Madam. I will arrive as soon as time allows, which I expect to be within the hour. I assure you the horses shall not be spared. Yours respectfully." (slower to type, yes, but we do not like to be rushed).
PHP, on the other hand, is full to bursting with abbreviations and acronyms which are entirely unnecessary:



  • str_replace()
  • is_int()
  • var_dump()
  • preg_match()
  • json_encode()
  • mysql_connect()


The following changes should improve things:



  • string_replace()
  • is_integer()
  • variable_dump()
  • perl_regular_expression_match()
  • javascript_object_notation_encode()
  • my_structured_query_language_connect()


Edit: I have corrected the expansion of "preg_match" - thanks to those who pointed it out.
[h=3]Eloquence[/h]

  • if ($condition) {
  • // Code here
  • } else {
  • // Code here
  • }


Shakespeare would be ashamed to see his native tongue twisted into this monstrosity. Brevity is to be applauded in the right context - in some dark corner, where it shall be seldom seen - but not here. The if ... else block is the most used conditional code in all of PHP, so it must be made as inoffensive as possible. There are many options for its replacement, but this may be the strongest:



  • perchance (£condition) {
  • // Code here
  • } otherwise {
  • // Code here
  • }


The same naturally applies to the Americanised switch ... case construct, which one can only describe as clunky and unpleasant:



  • switch ($variable) {
  • case $option1:
  • //Code here
  • break;
  • case $option2:
  • //Code here
  • break;
  • default:
  • //Code here
  • break;
  • }


Words such as "switch", "break" and "default" are hard on the reader and lack context. The Right Honourable biggerthancheeses was kind enough to contribute a more gentrified suggestion (and has some interesting ideas, particularly around replacement of "include()" with something like "i_might_be_partial_to()", demonstrating a natural talent for the Imperialisation of programming languages):



  • what_about (£variable) {
  • perhaps £possibility:
  • //Code here
  • splendid;
  • perhaps £other_possibility:
  • //Code here
  • splendid;
  • on_the_off_chance:
  • //Code here
  • splendid;
  • }


[h=3]Spelling[/h]

  • imagecolorallocate()
  • serialize()
  • newt_centered_window()
  • connection_status()


Words fail me at this point. How is any self-respecting gentleman expected to make head or tail of these "words". It beggars belief that anyone could allow such distortions of words to be entered into a programming language. They, along with the cornucopia of similar errors, should be reverted to their proper forms immediately:



  • imagecolourallocate()
  • serialise()
  • newt_centred_window()
  • connexion_status()[SUP]2[/SUP]


[h=3]Manners[/h]

  • try {
  • // Code here
  • } catch (Exception $e) {
  • // Handle exception
  • die('Message');
  • }


The try ... catch block is an excellent example of PHP's lack of manners. Far too direct to be allowed in the new PHP. Additionally, the word "die" is so very depressing. This new block, although more verbose, is vastly more polite and upbeat:



  • would_you_mind {
  • // Code here
  • } actually_i_do_mind (Exception £e) {
  • // Politely move on
  • cheerio('Message');
  • }


[h=3]Class[/h] Perhaps nothing is as important and ingrained in the British psyche as the notion of class and, while there are few opportunities for change within this part of PHP, the changes that there are to be made here are important.



  • class Republic {
  • public $a;
  • private $b;
  • protected $c;
  • }
  • $example = new Republic();


To begin with, the current system has no place for class hierarchy and this is unacceptable. So we shall begin by giving classes specific levels - upper, middle, working - and no class can access the methods of one of a higher level without the explicit permission of the higher order class (of course, though it might then have access, it would not be a true member of the higher order and could not itself grant higher order access to other lower order classes). "Public" and "Private", in the British class system, are often synonymous (see, for example, school system nomenclature), so these must be adjusted, as should the "Protected" property visibility. The word "new", while passable, has a much more appropriate replacement in matters of class.



  • upper_class Empire {
  • state £a;
  • private £b;
  • hereditary £c;
  • }
  • £example = nouveau Empire();


[h=3]The Sun Never Sets ...[/h] It is hoped that these few simple changes will improve the reputation and status of PHP among other languages. No longer will it be the poor American cousin - instead it can take its rightful place as the - British - King of the scripting languages.
[h=3]Thanks[/h] Many thanks to Mark and Pat, colleagues at GSBA, who started this resurrection of the British Empire in the pub on Friday.
1. Ok, the neighbouring local tongue.
2. Yes, connexion.




http://www.addedbytes.com/blog/if-php-were-british/
 
Using my phone, condensing quotes is hard, but Tom, Shakespear made up pretty much half the words in his plays.
 
php humor. never thought i would see the day.

Very interesting. I love interesting facts, don't you? I know a man who wrote a book about concrete. That was interesting, too. Then the was the guy who didn't want to be boring so he didn't collect stamps.
Life is wonderful. I went to a bar last week that had a US$506.00 minimum charge (HK$4000). That was fun.
I thought PHP was a contraction of 'Philipines' and visited to see pictures of pretty beaches and accessible girls.... or was it the other way round?
 
Very interesting. I love interesting facts, don't you? I know a man who wrote a book about concrete. That was interesting, too. Then the was the guy who didn't want to be boring so he didn't collect stamps.
Life is wonderful. I went to a bar last week that had a US$506.00 minimum charge (HK$4000). That was fun.
I thought PHP was a contraction of 'Philipines' and visited to see pictures of pretty beaches and accessible girls.... or was it the other way round?

SQV4M.gif
 
Back
Top