13 |
* $Id$ |
* $Id$ |
14 |
* |
* |
15 |
* $Log$ |
* $Log$ |
16 |
|
* Revision 1.2 2003/03/05 11:58:49 joko |
17 |
|
* modified is_hash, mkInstance and others |
18 |
|
* |
19 |
* Revision 1.1 2003/03/03 21:08:21 joko |
* Revision 1.1 2003/03/03 21:08:21 joko |
20 |
* refactored from flib/utils |
* refactored from flib/utils |
21 |
* |
* |
195 |
} |
} |
196 |
|
|
197 |
// from: php.net - http://www.php.net/manual/en/function.array-merge-recursive.php |
// from: php.net - http://www.php.net/manual/en/function.array-merge-recursive.php |
198 |
function is_hash( $var ) { |
function is_hash( $var = null ) { |
199 |
if( is_array( $var ) ) { |
if( is_array( $var ) ) { |
200 |
$keys = array_keys( $var ); |
$keys = array_keys( $var ); |
201 |
$all_num = true; |
$all_num = true; |
317 |
function &mkComponent() { |
function &mkComponent() { |
318 |
|
|
319 |
// argument handling - perl style |
// argument handling - perl style |
320 |
$arg_list = func_get_args(); |
$arg_list = &func_get_args(); |
321 |
|
|
322 |
// trace |
// trace |
323 |
//print "php::mkInstance: " . Dumper($arg_list); |
//print "php::mkInstance: " . Dumper($arg_list); |
325 |
|
|
326 |
// patch arglist if all arguments are passed in as a single array |
// patch arglist if all arguments are passed in as a single array |
327 |
if (sizeof($arg_list) == 1 && is_array($arg_list[0])) { |
if (sizeof($arg_list) == 1 && is_array($arg_list[0])) { |
328 |
$arg_list = $arg_list[0]; |
$arg_list = &$arg_list[0]; |
329 |
} |
} |
330 |
|
|
331 |
//print "arg_list: $arg_list<br/>"; |
//print "arg_list: $arg_list<br/>"; |
428 |
} |
} |
429 |
} |
} |
430 |
|
|
431 |
function &mkInstance($classname, $attributes = null) { |
function &mkInstance($classname, $attributes = array()) { |
432 |
|
|
433 |
$oo = is_object($this); |
$oo = is_object($this); |
434 |
|
|
478 |
|
|
479 |
$args_pass = array(); |
$args_pass = array(); |
480 |
for ($i=0; $i<=count($attributes); $i++) { |
for ($i=0; $i<=count($attributes); $i++) { |
481 |
array_push($args_pass, '$attributes[' . $i . ']'); |
array_push($args_pass, '&$attributes[' . $i . ']'); |
482 |
} |
} |
483 |
|
|
484 |
$arg_string = join(', ', $args_pass); |
$arg_string = join(', ', $args_pass); |