'留言', 'common\models\Page' => '单页', 'common\models\Article' => '文章', 'common\modules\book\models\Book' => '书', 'common\modules\book\models\BookChapter' => '书章节', ]; } public static function getEntityName($entity) { $entityList = self::getEntityList(); return ArrayHelper::getValue($entityList, $entity, $entity); } /** * 把时间转换为友好的格式,3天内 * @param $time * @return false|string * @author nodelog */ public static function formatTime($time) { $dur = time() - $time;//时间差 if ($dur > 0) { if ($dur < 60) { return $dur . '秒前'; } if ($dur < 3600) { return floor($dur / 60) . '分钟前'; } if ($dur < 86400) { return floor($dur / 3600) . '小时前'; } if ($dur < 86400 * 30) {//30天内 return floor($dur / 86400) . '天前'; } if ($dur < 86400 * 30 * 12) {//30天内 return floor($dur / (86400 * 30)) . '月前'; } } return date("Y-m-d H:i", $time); } /** * 格式化数字 为 千、万单位 * @param $number * @return string * @author nodelog */ public static function formatNumber( $number ) { if ($number < 1000) { return $number; } if ($number < 10000) { return round($number / 1000, 2) . '千'; } return round($number / 10000, 2) . '万'; } /** * 封装httpClient的get函数 * @param $url * @param array $params * @param array $headers * @param array $options * @return \yii\httpclient\Request * @author nodelog */ public static function httpGet($url, $params = [], $headers = [], $options = []) { $httpClient = self::getHttpClient(); return $httpClient->get($url, $params, $headers, $options)->send()->getData(); } /** * 封装httpClient的post函数 * @param $url * @param array $params * @param array $headers * @param array $options * @return \yii\httpclient\Request * @author nodelog */ protected function httpPost($url, $params = [], $headers = [], $options = []) { $httpClient = self::getHttpClient(); return $httpClient->post($url, $params, $headers, $options)->send()->getData(); } /** * 获取http客户端 * @return Client * @author nodelog */ private static function getHttpClient() { if (empty(self::$httpClient)) { self::$httpClient = new Client([ 'transport' => 'yii\httpclient\CurlTransport', ]); } return self::$httpClient; } /** * 格式化大小 * @param $size * @return string * @author nodelog */ public static function formatSize($size) { $units = array('B', 'K', 'M', 'G', 'T', 'P', 'E', 'Z', 'Y'); $power = $size > 0 ? floor(log($size, 1024)) : 0; return number_format($size / pow(1024, $power), 2, '.', ',') . ' ' . $units[$power]; } /** 文件转base64输出 * @param String $file 文件路径 * @return String base64 string */ public static function file2Base64($image_file){ $base64_image = ''; $image_info = getimagesize($image_file); $image_data = fread(fopen($image_file, 'r'), filesize($image_file)); $base64_image = 'data:' . $image_info['mime'] . ';base64,' . chunk_split(base64_encode($image_data)); return $base64_image; $base64_file = ''; if(file_exists($file)){ $mime_type= mime_content_type($file); $base64_data = base64_encode(file_get_contents($file)); $base64_file = 'data:'.$mime_type.';base64,'.$base64_data; } return $base64_file; } /** * [ 返回随机颜色 ] * @param integer $type [description] * @return [type] [description] */ public static function captcha_color($type=1) { if(!in_array($type, array(1,2))) $type=1; if($type==1) { // 背景颜色 $bg_color_arr=array('15595519','16316664'); $bg=$bg_color_arr[array_rand($bg_color_arr)]; return (int) '0x'.$bg; } else { // 字体颜色 $text_color_arr=array('12326852','2185586'); $tc=$text_color_arr[array_rand($text_color_arr)]; return (int) '0x'.$tc; } } }