3 |
// $Id$ |
// $Id$ |
4 |
// ----------------------------------------------------------------------------- |
// ----------------------------------------------------------------------------- |
5 |
// $Log$ |
// $Log$ |
6 |
|
// Revision 1.10 2004/11/03 14:13:45 jonen |
7 |
|
// minor changes related to check mail-address |
8 |
|
// |
9 |
|
// Revision 1.9 2004/09/07 18:52:01 jonen |
10 |
|
// added function 'format_amount' |
11 |
|
// |
12 |
|
// Revision 1.8 2003/03/03 21:21:43 joko |
13 |
|
// refactored most reusable code to org.netfrag.glib/php_extensions.php |
14 |
|
// |
15 |
// Revision 1.7 2003/03/01 05:05:55 joko |
// Revision 1.7 2003/03/01 05:05:55 joko |
16 |
// minor modification to 'Dumper' |
// minor modification to 'Dumper' |
17 |
// |
// |
80 |
return $date_res; |
return $date_res; |
81 |
} |
} |
82 |
|
|
|
// ------------------------------------------------- |
|
|
// array initializer |
|
|
// initializes passed variable (taken by reference) with an empty array |
|
|
// does this only if it doesn't exist yet or initialization is explicitely requested ($clear = 1) |
|
|
function array_init(&$var, $clear = 0) { |
|
|
if (!is_array($var) || $clear) { $var = array(); } |
|
|
} |
|
83 |
|
|
84 |
|
|
85 |
// format functions |
// format functions |
86 |
|
// refactor to org.netfrag.glib::php??? |
87 |
|
// refactor to Data::Validator??? |
88 |
function isvalidemailaddress($mail) { |
function isvalidemailaddress($mail) { |
89 |
// TODO: review for regex process load |
// TODO: review for regex process load |
90 |
//return ((($string = trim($string)) != '') && (($atpos = strpos($string, '@' , 1)) > 1) && (($rdotpos = strrpos($string, '.')) > ($atpos + 2)) && (strlen($string) > $rdotpos + 2)); |
//return ((($string = trim($string)) != '') && (($atpos = strpos($string, '@' , 1)) > 1) && (($rdotpos = strrpos($string, '.')) > ($atpos + 2)) && (strlen($string) > $rdotpos + 2)); |
97 |
return "valid"; |
return "valid"; |
98 |
} |
} |
99 |
|
|
|
function Dumper() { |
|
|
ob_start(); |
|
|
$arg_list = func_get_args(); |
|
|
$count = 1; |
|
|
foreach ($arg_list as $arg) { |
|
|
//print "<hr/>"; |
|
|
print_r($arg); |
|
|
$count++; |
|
|
} |
|
|
$var_dump = ob_get_contents(); |
|
|
ob_end_clean(); |
|
|
$var_dump = str_replace("\n", "<br>", $var_dump); |
|
|
$var_dump = str_replace(" ", " ", $var_dump); |
|
|
return $var_dump; |
|
|
} |
|
|
|
|
|
function session_register_safe($varname) { |
|
|
if (!session_is_registered($varname)) { |
|
|
session_register($varname); |
|
|
return 1; |
|
|
} |
|
|
} |
|
100 |
|
|
101 |
//------------ getMonths --------------------- |
//------------ getMonths --------------------- |
102 |
// TODO: localize! |
// TODO: localize! |
109 |
return $months; |
return $months; |
110 |
} |
} |
111 |
|
|
112 |
|
|
113 |
|
// refactor to Data::Lift??? |
114 |
function null2nbsp_string($arg) { |
function null2nbsp_string($arg) { |
115 |
if ($arg == '') { |
if ($arg == '') { |
116 |
$arg = ' '; |
$arg = ' '; |
118 |
return $arg; |
return $arg; |
119 |
} |
} |
120 |
|
|
121 |
|
// refactor to Data::Lift??? |
122 |
function null2nbsp_arraywalker(&$item, $key) { |
function null2nbsp_arraywalker(&$item, $key) { |
123 |
$item = null2nbsp_string($item); |
$item = null2nbsp_string($item); |
124 |
} |
} |
125 |
|
|
126 |
|
// refactor to Data::Lift??? |
127 |
function null2nbsp($arg) { |
function null2nbsp($arg) { |
128 |
if (is_array($arg)) { |
if (is_array($arg)) { |
129 |
array_walk($arg, 'null2nbsp_arraywalker'); |
array_walk($arg, 'null2nbsp_arraywalker'); |
163 |
|
|
164 |
function number_format_locale ($num, $decimals = null) { |
function number_format_locale ($num, $decimals = null) { |
165 |
$locale = localeconv(); |
$locale = localeconv(); |
166 |
if(!isset($decimals)) $decimals = $locale['frac_digits']; |
//if(!isset($decimals)) $decimals = $locale['frac_digits']; |
167 |
|
if(!isset($decimals)) $decimals = 2; |
168 |
return number_format($num, $decimals, $locale['decimal_point'], $locale['thousands_sep']); |
return number_format($num, $decimals, $locale['decimal_point'], $locale['thousands_sep']); |
169 |
} |
} |
170 |
|
|
171 |
|
|
172 |
|
// refactor to org.netfrag.glib::php??? |
173 |
|
// rename to 'check_amount'? |
174 |
|
// move to Data::Validator??? |
175 |
function is_amount($amount) { |
function is_amount($amount) { |
176 |
//if( (number_format_locale((string)doubleval($amount)) === number_format_locale((string)$amount)) && number_format_locale((doubleval($amount)) >number_format_locale(0)) ) { |
//if( (number_format_locale((string)doubleval($amount)) === number_format_locale((string)$amount)) && number_format_locale((doubleval($amount)) >number_format_locale(0)) ) { |
177 |
if( ((string)doubleval($amount) === (string)$amount) && (doubleval($amount) > 0) ) { |
if( ((string)doubleval($amount) === (string)$amount) && (doubleval($amount) > 0) ) { |
179 |
} |
} |
180 |
} |
} |
181 |
|
|
182 |
|
function format_amount(&$amount) { |
183 |
|
$amount = str_replace(array(".", ","), array("", "."), $amount); |
184 |
|
//print "streplace amount: '$amount'<br>"; |
185 |
|
//return $amount; |
186 |
|
} |
187 |
|
|
|
// from: php.net - http://www.php.net/manual/en/function.array-merge-recursive.php |
|
|
function is_hash( $var ) { |
|
|
if( is_array( $var ) ) { |
|
|
$keys = array_keys( $var ); |
|
|
$all_num = true; |
|
|
for( $i=0; $i<count($keys); $i++ ) |
|
|
if( is_string($keys[$i] ) ) return true; |
|
|
} |
|
|
return false; |
|
|
} |
|
|
|
|
|
// from: php.net - http://www.php.net/manual/en/function.array-merge-recursive.php |
|
|
function array_join_merge( $arr1, $arr2 ) { |
|
|
if( is_array( $arr1 ) and is_array( $arr2 ) ) { |
|
|
// the same -> merge |
|
|
$new_array = array(); |
|
|
|
|
|
if( is_hash( $arr1 ) and is_hash( $arr2 ) ) { |
|
|
// hashes -> merge based on keys |
|
|
$keys = array_merge( array_keys( $arr1 ), array_keys( $arr2 ) ); |
|
|
foreach( $keys as $key ) { |
|
|
$new_array[$key] = array_join_merge( $arr1[$key], $arr2[$key] ); |
|
|
} |
|
|
} else { |
|
|
// two real arrays -> merge |
|
|
$new_array = |
|
|
array_reverse(array_unique(array_reverse(array_merge($arr1,$arr2)))); |
|
|
} |
|
|
|
|
|
return $new_array; |
|
|
} else { |
|
|
// not the same ... take new one if defined, else the old one stays |
|
|
return $arr2 ? $arr2 : $arr1; |
|
|
} |
|
|
} |
|
188 |
|
|
189 |
?> |
?> |