首页
工具导航
友情链接
关于
Search
1
关于本地larvael项目部署到服务器报错Whoops, looks like something went wrong.的问题
6,581 阅读
2
设置邮箱头像方法,gravatar头像设置
4,638 阅读
3
layui+php多文件列表,多图上传,包含表单修改,可适用于laravel框架和tp框架
3,800 阅读
4
百度工具DNS无法解析IP
2,018 阅读
5
在复制codepen代码时踩得坑,three.js实现的特效
1,736 阅读
东扯西扯
网站建站
SEO优化
公众号开发
登录
Search
标签搜索
php
css
laravel
宝塔面板
jQuery
mysql
js
vscode
layui
thinkphp
多图上传
插件
navicat
gravatar头像
轻量应用服务器
seo
html
腾讯云
微信支付
redis
EzraYes
累计撰写
105
篇文章
累计收到
144
条评论
首页
栏目
东扯西扯
网站建站
SEO优化
公众号开发
页面
工具导航
友情链接
关于
搜索到
105
篇与
Ezra
的结果
2023-03-17
sqlserver获取某个时间范围内,每天某个小时的数据
如题,想获取到某个时间范围内,每天某个小时的数据需要用到datepart函数SELECT SUM ( total6_v ) AS total6_v,SUM ( total7_v ) AS total7_v,SUM ( tx_v ) AS tx_v,EQID ,CONVERT( VARCHAR ( 100 ), DATEADD( hh,- 1, eqtime ), 23 ) as eqtime FROM (select * from value_meter_instant_202103) i WHERE [EQTime] BETWEEN '2021-03-09 00:00:01' AND '2021-03-12 00:00:00' AND datepart(hh,EQTime) >= 3 AND datepart(hh,EQTime) <= 23 GROUP BY CONVERT( VARCHAR ( 100 ), DATEADD( hh,- 1, eqtime ), 23 ) ,EQID/* datepart()函数的使用 * datepart()函数可以方便的取到时期中的各个部分 *如日期:2006-07--02 18:15:36.513 * yy:取年 2006 * mm:取月 7 * dd:取月中的天 2 * dy:取年中的天 183 * wk:取年中的周 27 * dw:取周中的天 1 * qq:取年中的季度 3 * hh:取小时 18 * mi:取分钟 15 * ss:取秒 36 * 以下简单的语句可以演示所取到的结果 */ select getdate() select datepart(mm,getdate()) select datepart(yy,getDate()) select datepart(dd,getdate()) select datepart(dy,getdate()) select datepart(wk,getdate()) select datepart(dw,getdate()) select datepart(qq,getdate()) select datepart(hh,getdate()) select datepart(mi,getdate()) select datepart(ss,getdate()) select datediff(dd,getdate(),'12/25/2006') --计算从今天到12/25/2006还有多少天 select datediff(mm,getdate(),'12/25/2006') --计算从今天到12/25/2006还有多少个月 select datename(mm,getdate()) --以字符串而不是数字的形式得到今天的月份(07) select dateadd(dd,30,getdate()) --在目前的日期日期上加30天 select dateadd(mm,3,getdate()) --在目前的日期日期上加3个月 select dateadd(yy,1,getdate()) --在目前的日期日期上加1年
2023年03月17日
202 阅读
0 评论
0 点赞
2023-03-16
php生成excel文件
/** * Notes:导出数据库数据为excel,返回文件路由 * @param $list 数据 * @param $name 文件名称 * @param $fields 表头,与$list对应好 */ function exportUrl($list, $name, $fields) { set_time_limit(0); $excel_title = []; if ($list) { $keys = array_keys($list[0]); foreach ($fields as $key => $field) { if (in_array($key, $keys)) { $excel_title[] = $field; } } } else { //没有数据时导出表头 foreach ($fields as $k => $v) { $excel_title[] = $v; } } vendor("PHPExcel.PHPExcel"); $objPHPExcel = new \PHPExcel(); $objPHPExcel->getProperties()->setCreator("ctos") ->setLastModifiedBy("ctos") ->setTitle("Office 2007 XLSX Test Document") ->setSubject("Office 2007 XLSX Test Document") ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.") ->setKeywords("office 2007 openxml php") ->setCategory("Test result file"); $lie1 = []; $last = 'A'; for ($i = 1; $i <= count($excel_title); $i++) { if (array_search($excel_title[$i - 1], $fields)) { $lie1[array_search($excel_title[$i - 1], $fields)] = numCovertLetter($i); $result = numCovertLetter($i) . '1'; $objPHPExcel->setActiveSheetIndex(0)->setCellValue($result, $excel_title[$i - 1]); $last = numCovertLetter($i); } } // 水平居中 $objPHPExcel->getDefaultStyle()->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER); // 垂直居中 $objPHPExcel->getDefaultStyle()->getAlignment()->setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER); //设置行宽度 $objPHPExcel->getActiveSheet()->getDefaultColumnDimension()->setWidth(15); // $objPHPExcel->getActiveSheet()->getColumnDimension('B')->setWidth(20); //设置行高度 $objPHPExcel->getActiveSheet()->getDefaultRowDimension()->setRowHeight(15); $objPHPExcel->getActiveSheet()->getDefaultStyle()->getFont()->setSize(10); $objPHPExcel->getActiveSheet()->getStyle('A1:' . $last . '1')->getFont()->setBold(true); for ($j = 0; $j < count($list); $j++) { foreach ($lie1 as $key => $item) { $objPHPExcel->getActiveSheet(0)->setCellValue($item . ($j + 2), $list[$j][$key]); } } // 设置单元格换行 $objPHPExcel->getDefaultStyle()->getAlignment()->setWrapText(True); //边框线 $style_array = array( 'borders' => array( 'allborders' => array( 'style' => \PHPExcel_Style_Border::BORDER_THIN ) )); $objPHPExcel->getActiveSheet()->getStyle('A2:' . $last . (count($list) + 1))->applyFromArray($style_array); $dir = '../public/tableData/excel/' . date('Ymd'); if (!is_dir($dir)) { mkdir($dir, 0777, true); } $fielName = $name . '_' . date('YmdHis') . mt_rand(1111, 9999); $url = $dir . '/' . $fielName . '.xlsx'; $objWriter = \PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); $objWriter->save($url); $new_url = substr($url, 9); $data = [ //'url' => 'http://' . $_SERVER['SERVER_NAME'] . ":" . $_SERVER['SERVER_PORT'] . $new_url, 'url' => $new_url, 'name' => $fielName . '.xlsx' ]; return setReturn(200, '', $data); }
2023年03月16日
176 阅读
0 评论
0 点赞
2023-02-27
SQLSTATE[08001]: [Microsoft][ODBC Driver 18 for SQL Server]SSL 提供程序: 证书链是由不受信任的颁发机构颁发的。
// 连接dsn 'dsn' => 'sqlsrv:Database=tp_water_tianyi;Server=192.168.1.15,1433;TrustServerCertificate=true',
2023年02月27日
574 阅读
0 评论
0 点赞
2022-09-14
一个http请求类
<?php namespace xxxx; /** * Http 请求类 */ class Http { /** * 发送一个POST请求 * @param string $url 请求URL * @param array $params 请求参数 * @param array $options 扩展参数 * @return mixed|string */ public static function post($url, $params = [], $options = []) { $req = self::sendRequest($url, $params, 'POST', $options); return $req['ret'] ? $req['msg'] : ''; } /** * 发送一个GET请求 * @param string $url 请求URL * @param array $params 请求参数 * @param array $options 扩展参数 * @return mixed|string */ public static function get($url, $params = [], $options = []) { $req = self::sendRequest($url, $params, 'GET', $options); return $req['ret'] ? $req['msg'] : ''; } /** * CURL发送Request请求,含POST和REQUEST * @param string $url 请求的链接 * @param mixed $params 传递的参数 * @param string $method 请求的方法 * @param mixed $options CURL的参数 * @return array */ public static function sendRequest($url, $params = [], $method = 'POST', $options = []) { $method = strtoupper($method); $protocol = substr($url, 0, 5); $query_string = is_array($params) ? http_build_query($params) : $params; $ch = curl_init(); $defaults = []; if ('GET' == $method) { $geturl = $query_string ? $url . (stripos($url, "?") !== false ? "&" : "?") . $query_string : $url; $defaults[CURLOPT_URL] = $geturl; } else { $defaults[CURLOPT_URL] = $url; if ($method == 'POST') { $defaults[CURLOPT_POST] = 1; } else { $defaults[CURLOPT_CUSTOMREQUEST] = $method; } $defaults[CURLOPT_POSTFIELDS] = $params; } $defaults[CURLOPT_HEADER] = false; $defaults[CURLOPT_USERAGENT] = "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.98 Safari/537.36"; $defaults[CURLOPT_FOLLOWLOCATION] = true; $defaults[CURLOPT_RETURNTRANSFER] = true; $defaults[CURLOPT_CONNECTTIMEOUT] = 3; $defaults[CURLOPT_TIMEOUT] = 3; // disable 100-continue curl_setopt($ch, CURLOPT_HTTPHEADER, array('Expect:')); if ('https' == $protocol) { $defaults[CURLOPT_SSL_VERIFYPEER] = false; $defaults[CURLOPT_SSL_VERIFYHOST] = false; } curl_setopt_array($ch, (array)$options + $defaults); $ret = curl_exec($ch); $err = curl_error($ch); if (false === $ret || !empty($err)) { $errno = curl_errno($ch); $info = curl_getinfo($ch); curl_close($ch); return [ 'ret' => false, 'errno' => $errno, 'msg' => $err, 'info' => $info, ]; } curl_close($ch); return [ 'ret' => true, 'msg' => $ret, ]; } /** * 异步发送一个请求 * @param string $url 请求的链接 * @param mixed $params 请求的参数 * @param string $method 请求的方法 * @return boolean TRUE */ public static function sendAsyncRequest($url, $params = [], $method = 'POST') { $method = strtoupper($method); $method = $method == 'POST' ? 'POST' : 'GET'; //构造传递的参数 if (is_array($params)) { $post_params = []; foreach ($params as $k => &$v) { if (is_array($v)) { $v = implode(',', $v); } $post_params[] = $k . '=' . urlencode($v); } $post_string = implode('&', $post_params); } else { $post_string = $params; } $parts = parse_url($url); //构造查询的参数 if ($method == 'GET' && $post_string) { $parts['query'] = isset($parts['query']) ? $parts['query'] . '&' . $post_string : $post_string; $post_string = ''; } $parts['query'] = isset($parts['query']) && $parts['query'] ? '?' . $parts['query'] : ''; //发送socket请求,获得连接句柄 $fp = fsockopen($parts['host'], isset($parts['port']) ? $parts['port'] : 80, $errno, $errstr, 3); if (!$fp) { return false; } //设置超时时间 stream_set_timeout($fp, 3); $out = "{$method} {$parts['path']}{$parts['query']} HTTP/1.1\r\n"; $out .= "Host: {$parts['host']}\r\n"; $out .= "Content-Type: application/x-www-form-urlencoded\r\n"; $out .= "Content-Length: " . strlen($post_string) . "\r\n"; $out .= "Connection: Close\r\n\r\n"; if ($post_string !== '') { $out .= $post_string; } fwrite($fp, $out); //不用关心服务器返回结果 //echo fread($fp, 1024); fclose($fp); return true; } /** * 发送文件到客户端 * @param string $file * @param bool $delaftersend * @param bool $exitaftersend */ public static function sendToBrowser($file, $delaftersend = true, $exitaftersend = true) { if (file_exists($file) && is_readable($file)) { header('Content-Description: File Transfer'); header('Content-Type: application/octet-stream'); header('Content-Disposition: attachment;filename = ' . basename($file)); header('Content-Transfer-Encoding: binary'); header('Expires: 0'); header('Cache-Control: must-revalidate, post-check = 0, pre-check = 0'); header('Pragma: public'); header('Content-Length: ' . filesize($file)); ob_clean(); flush(); readfile($file); if ($delaftersend) { unlink($file); } if ($exitaftersend) { exit; } } } }
2022年09月14日
227 阅读
0 评论
0 点赞
2022-07-22
laravel 多条件查询[A OR B] AND C AND D
$res=WendangJd::orderBy('created_at','desc')->where(function($res){ $res=$res->where('status','>=',200) ->orwhere('xhjd','>=',200) ; })->where('id','!=','')->get();
2022年07月22日
314 阅读
0 评论
0 点赞
1
...
4
5
6
...
21