ok
Direktori : /usr/local/lsws/admin/html.6.0.10/classes/ |
Current File : //usr/local/lsws/admin/html.6.0.10/classes/DUtil.php |
<?php class DUtil { public static function object_sort(&$array_data, $column, $direction, $type) { // get a list of columns $columns = array(); foreach ($array_data as $key => $row) { $columns[$key] = $row->$column; } array_multisort($columns, $direction, $type, $array_data); } public static function grab_input($origin = "",$name = "",$type = "") { $temp = null; $origin = strtoupper($origin); if($name == "" || $origin == "") { die("input error"); } switch($origin) { case "REQUEST": case "ANY": $temp = $_REQUEST; break; case "GET": $temp = $_GET; break; case "POST": $temp = $_POST; break; case "COOKIE": $temp = $_COOKIE; break; case "FILE": $temp = $_FILES; break; case "SERVER": $temp = $_SERVER; break; default: die("input extract error."); break; } if(array_key_exists($name,$temp)) { $temp = $temp[$name]; } else { $temp = null; } switch($type) { case "int": return (int) $temp; break; case "float": return (float) $temp; break; case "string": return trim((string) $temp); break; case "array": return (is_array($temp) ? $temp : null); break; case "object": return (is_object($temp) ? $temp : null); break; default: return trim((string) $temp); //default string break; } } public static function genOptions($options, $selValue) { $o = ''; if ( $options ) { foreach ( $options as $key => $value ) { $o .= '<option value="' . $key .'"'; if ( $key == $selValue ) $o .= ' selected'; $o .= ">$value</option>\n"; } } return $o; } public static function getGoodVal($val) { if ( $val != null && strpos($val, '<') !== false ) { return null; } else return $val; } public static function getGoodVal1(&$val) { if ( $val != null && strpos($val, '<') !== false ) { $val = null; return null; } else return $val; } public static function getLastId($id) { if ( $id == null ) return null; $pos = strrpos($id, '`'); if ( $pos === false ) return $id; else return substr($id, $pos+1); } public static function trimLastId(&$id) { $pos = strrpos($id, '`'); if ( $pos !== false ) $id = substr($id, 0, $pos); else $id = null; } public static function switchLastId(&$curId, $newId) { $pos = strrpos($curId, '`'); if ( $pos !== false ) $curId = substr($curId, 0, $pos+1) . $newId; else $curId = $newId; } public static function &locateData0(&$holder, $dataloc, $ref=null) { $data = &$holder; if ( $dataloc != null ) { $datalocs = explode(':', $dataloc); foreach ( $datalocs as $loc ) { $data = &$data[$loc]; } if ( $ref != null ) $data = &$data[$ref]; } return $data; } public static function &locateData(&$holder, $dataloc, $ref = null) { $data = &$holder; if ($ref != null) { $refs = explode('`', $ref); } if ($dataloc != null) { $datalocs = explode(':', $dataloc); foreach ($datalocs as $loc) { $r = strpos($loc, '!$'); if ($r > 0) { $a = substr($loc, $r + 2); $loc = substr($loc, 0, $r); $data = &$data[$loc][$refs[$a]]; } else { $data = &$data[$loc]; } } } return $data; } public static function getSubTid($subTbls, $data) { $key = $subTbls[0]; if ( !isset($data[$key]) ) return $subTbls[1]; $newkey = $data[$key]->GetVal(); if ( ($newkey == '0') || !isset($subTbls[$newkey]) ) { return $subTbls[1]; } else return $subTbls[$newkey]; } public static function splitMultiple($val) { return preg_split("/, /", $val, -1, PREG_SPLIT_NO_EMPTY); } public static function array_string_keys($input) { $output = array(); if ($input != null && is_array($input)) { foreach($input as $k => $v) { $output[] = (string)$k; } } return $output; } public static function getDataVal(&$holderArray, $key) { if ($holderArray == null || ! is_array($holderArray) || empty($holderArray[$key]) || ! is_a($holderArray[$key], 'CVal')) { return null; } else { return $holderArray[$key]->GetVal(); } } public static function dbg_out($tag, &$obj, $visible=true) { if ($visible) echo "<pre> $tag \n" . print_r($obj, true) . "\n</pre>"; else echo "<!-- $tag --\n" . print_r($obj, true) . "-->\n"; } public static function dbg_tag($tag, $visible=true) { if ($visible) echo "<pre>$tag \n</pre>"; else echo "<!-- $tag -->\n"; } }