RE: func_get_args as a hash? (faster constructors)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Well, I would reply that this is probably as easy to read ...
You should think about poeple having digg into your code, or about you in a few month...

Moreover, having much parameters (more than 4) is not a good idea (for the same reading and understanding reasons). Functions having more than 4 params should probably be refactored... Especially inside the constructor !

this is my own thinking, of course

Vincent


-----Original Message-----
From: Kelly Jones [mailto:kelly.terry.jones@xxxxxxxxx]
Sent: Tue 28/11/2006 2:57
To: php-general@xxxxxxxxxxxxx
Subject:  func_get_args as a hash? (faster constructors)
 
If I define a function like this:

function foo ($x, $y, $z) {}

and then call: foo(1,2,"bar");

is there a function I can call inside foo() that yields this hash:

{"x" => 1, "y" => 2, "z" => "bar"}

In other words, gives me the values *and names* of the arguments to foo?

func_get_args just yields the values.

Having this function would make writing constuctors easier.

The normal way:

fuction ClassName ($x, $y, $z) {
   $this->x = $x;
   $this->y = $y;
   $this->z = $z;
}

could be replaced with:

function ClassName ($x, $y, $z) {
   foreach (magic_function_i_want() as $key=>$val) {
      $this->$key =$val;
   }
}

Obviously, it's more of a savings when you have a large number of parameters.

-- 
We're just a Bunch Of Regular Guys, a collective group that's trying
to understand and assimilate technology. We feel that resistance to
new ideas and technology is unwise and ultimately futile.

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux