示例#1
0
 /**
  * 给 DB 类的 Import_XXX() 函数使用
  * 返回 false,或者 array('columnNames','data')
  * @param string $fileName
  * @return array|bool
  */
 public static function LoadCsvData($fileName)
 {
     /**
      * @var array $_CONFIG
      */
     global $_CONFIG;
     if (!$fileName) {
         return false;
     }
     /**
      * @var resource $fp
      */
     $fp = null;
     try {
         $fp = fopen($fileName, 'r');
         /**
          * @var array $columnDescriptions
          * @var array $columnNames
          * @var array $data
          */
         // 输入的格式:
         // 第一行为表标题(显示名称)
         // 第二行为对应的数据库列名
         // 接下来每行都是数据
         $bufferLength = 65536;
         $result = array();
         function explodeCsv($string)
         {
             return explode(',', $string);
         }
         if (true) {
             if (feof($fp)) {
                 fclose($fp);
                 return false;
             }
             fgets($fp, $bufferLength);
             //$columnDescriptions = explodeCsv($ret);
             if (feof($fp)) {
                 fclose($fp);
                 return false;
             }
             $ret = fgets($fp, $bufferLength);
             $columnNames = explodeCsv($ret);
             if (feof($fp)) {
                 fclose($fp);
                 return false;
             }
             $ret = fgets($fp, $bufferLength);
             $data = array();
             do {
                 $data[] = explodeCsv($ret);
                 if (feof($fp)) {
                     break;
                 }
                 $ret = fgets($fp, $bufferLength);
             } while (true);
         }
         $result['columnNames'] = $columnNames;
         $result['data'] = $data;
         $result = util::ConvertCharsetGbkToUtf8($result, $_CONFIG['flags']['csv-is-in-gbk']);
     } catch (Exception $ex) {
         if ($fp) {
             fclose($fp);
         }
         die($ex->getMessage());
     }
     // 阿里云用的是 PHP 5.2,不支持 finally = =
     if ($fp) {
         fclose($fp);
     }
     return $result;
 }
示例#2
0
文件: DB.php 项目: Hozuki/newbie-reg
 /**
  * @param array $a
  * @return FeedbackInfo
  */
 private static function fillStudentFeedback(array $a)
 {
     global $_CONFIG;
     $si = new FeedbackInfo();
     $a = util::ConvertCharsetGbkToUtf8($a, $_CONFIG['flags']['charset-hack']);
     $si->admissionID = trim($a['aid']);
     $si->studentName = trim($a['sname']);
     $si->studentNumber = trim($a['sno']);
     $si->dormNumber = trim($a['dormno']);
     $si->classNumber = trim($a['classno']);
     $si->adviserName = trim($a['advname']);
     return $si;
 }
示例#3
0
}
$db = new DB();
$db->Init();
switch ($m) {
    case 1:
        $data = $db->QueryGlobalStat();
        break;
    case 2:
        $data = $db->QueryRegStatAfter($time);
        break;
    default:
        break;
}
$db->Uninit();
if ($m > 0) {
    $data = util::ConvertCharsetGbkToUtf8($data, $_CONFIG['flags']['charset-hack']);
}
/**
 * @param array $l2array
 * @param string $indexName
 * @param mixed $valueToFind
 * @return bool|int|string
 */
function __findIndexInL2Array($l2array, $indexName, $valueToFind)
{
    foreach ($l2array as $k => $v) {
        if ($v[$indexName] == $valueToFind) {
            return $k;
        }
    }
    return false;