/[cvs]/nfo/php/libs/org.netfrag.flib/utils/helper.php
ViewVC logotype

Diff of /nfo/php/libs/org.netfrag.flib/utils/helper.php

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.7 by joko, Sat Mar 1 05:05:55 2003 UTC revision 1.8 by joko, Mon Mar 3 21:21:43 2003 UTC
# Line 3  Line 3 
3  //    $Id$  //    $Id$
4  //    -----------------------------------------------------------------------------  //    -----------------------------------------------------------------------------
5  //    $Log$  //    $Log$
6    //    Revision 1.8  2003/03/03 21:21:43  joko
7    //    refactored most reusable code to org.netfrag.glib/php_extensions.php
8    //
9  //    Revision 1.7  2003/03/01 05:05:55  joko  //    Revision 1.7  2003/03/01 05:05:55  joko
10  //    minor modification to 'Dumper'  //    minor modification to 'Dumper'
11  //  //
# Line 71  function get_date_forStorage($arg_date) Line 74  function get_date_forStorage($arg_date)
74    return $date_res;    return $date_res;
75  }  }
76    
 // -------------------------------------------------  
 // 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(); }  
 }  
77        
78    
79  // format functions  // format functions
80    // refactor to org.netfrag.glib::php???
81    // refactor to Data::Validator???
82  function isvalidemailaddress($mail) {  function isvalidemailaddress($mail) {
83    // TODO: review for regex process load    // TODO: review for regex process load
84    //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));
# Line 93  function isvalidemailaddress($mail) { Line 91  function isvalidemailaddress($mail) {
91    return "valid";    return "valid";
92  }  }
93    
 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(" ", "&nbsp;", $var_dump);  
   return $var_dump;  
 }  
   
 function session_register_safe($varname) {  
   if (!session_is_registered($varname)) {  
     session_register($varname);  
     return 1;  
   }  
 }  
94    
95  //------------ getMonths ---------------------  //------------ getMonths ---------------------
96  // TODO: localize!  // TODO: localize!
# Line 127  function getMonthNames() { Line 103  function getMonthNames() {
103     return $months;     return $months;
104  }  }
105    
106    
107    // refactor to Data::Lift???
108  function null2nbsp_string($arg) {  function null2nbsp_string($arg) {
109    if ($arg == '') {    if ($arg == '') {
110      $arg = '&nbsp;';      $arg = '&nbsp;';
# Line 134  function null2nbsp_string($arg) { Line 112  function null2nbsp_string($arg) {
112    return $arg;    return $arg;
113  }  }
114    
115    // refactor to Data::Lift???
116  function null2nbsp_arraywalker(&$item, $key) {  function null2nbsp_arraywalker(&$item, $key) {
117      $item = null2nbsp_string($item);      $item = null2nbsp_string($item);
118  }  }
119    
120    // refactor to Data::Lift???
121  function null2nbsp($arg) {  function null2nbsp($arg) {
122    if (is_array($arg)) {    if (is_array($arg)) {
123      array_walk($arg, 'null2nbsp_arraywalker');      array_walk($arg, 'null2nbsp_arraywalker');
# Line 182  function number_format_locale ($num, $de Line 162  function number_format_locale ($num, $de
162  }  }
163    
164    
165    // refactor to org.netfrag.glib::php???
166    // rename to 'check_amount'?
167    // move to Data::Validator???
168  function is_amount($amount) {  function is_amount($amount) {
169    //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)) ) {
170    if( ((string)doubleval($amount) === (string)$amount) && (doubleval($amount) > 0) ) {    if( ((string)doubleval($amount) === (string)$amount) && (doubleval($amount) > 0) ) {
# Line 190  function is_amount($amount) { Line 173  function is_amount($amount) {
173  }  }
174    
175    
176  // 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;  
  }  
 }  
177    
178  ?>  ?>

Legend:
Removed from v.1.7  
changed lines
  Added in v.1.8

MailToCvsAdmin">MailToCvsAdmin
ViewVC Help
Powered by ViewVC 1.1.26 RSS 2.0 feed