| 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); |