'default', 'dog' => 'default', 'bird' => 'default'); function return_member($tag) { switch($tag) { case "miau": $member = "cat"; break; case "bark": $member = "dog"; break; case "tweet": $member = "bird"; break; default: $member = NULL; break; } return($member); } function __construct() { $argc = func_num_args(); $i = 0; while ($i < $argc) { $tag = func_get_arg($i); $data = func_get_arg($i+1); $i += 2; //echo "tag:".$tag."\n"; if ($member = $this->return_member($tag)) { echo "t:$tag m:$member d:$data\n"; $this->$member = $data; } $this->animals["$member"] = array('tag' => $tag, 'data' => $data) ; } print("
"); print_r($this); print("
"); } } $x = new Test("miau", "cats do this", "bark", "dogs do this", "tweet", "birds do this"); ?>