TypechoJoeTheme

至尊技术网

统计
登录
用户名
密码
/
注册
用户名
邮箱
搜索到 606 篇与 的结果
2022-10-19

PHP cookie加密登录与验证

PHP cookie加密登录与验证
<?php /** * cookie加密登录与验证 * @param array $userInfo 用户信息 * @param bool|string $validate 是否为验证或者填入token值验证,填入data为返回用户信息,默认为false * @param int $expiresTime 过期时间,默认为1天 * @param string $tag token标签,默认为zz_token * @return bool|string */ function zz_login($userInfo, $validate = false, $expiresTime = 1, $tag = 'zz_token') { $salt = zz_salt(); $host = $_SERVER['HTTP_HOST']; if (!$salt) { return false; } if (!$validate) { try { $expiresTime = ti...
2022年10月19日
753 阅读
0 评论
2022-10-10

PHP快速导出大量数据到CSV

PHP快速导出大量数据到CSV
<?php //让程序一直运行 set_time_limit(0); //设置程序运行内存 ini_set('memory_limit', '128M'); $fileName = '数据'; header('Content-Encoding: UTF-8'); header("Content-type:application/vnd.ms-excel;charset=UTF-8"); header('Content-Disposition: attachment;filename="' . $fileName . '.csv"'); //打开php标准输出流 $fp = fopen('php://output', 'a'); //添加BOM头,以UTF8编码导出CSV文件,如果文件头未添加BOM头,打开会出现乱码。 fwrite($fp, chr(0xEF).chr(0xBB).chr(0xBF)); //添加导出标题 fputcsv($fp, ['姓名', '年龄', '地区']); $p...
2022年10月10日
771 阅读
0 评论
2022-09-14

js使用window.onload覆盖问题的解决方法

js使用window.onload覆盖问题的解决方法
解决多人开发时,同时使用window.onload事件所出现的后面的window.onload函数覆盖前面一个window.onload函数的问题。<script> // 第一种,使用addEventListener window.onload = function () { console.log("第一次调用"); } function twofunction() { console.log("第二次调用"); } window.addEventListener("load",twofunction); // 第二种,封装window.onload,使用addLoadEvent,但直接使用window.onload还是会被替换的 function addLoadEvent(func) { var oldonload = window.onload; if (typeof wi...
2022年09月14日
912 阅读
0 评论
2022-09-07

微信小程序的事件冒泡和捕获

微信小程序的事件冒泡和捕获
事件冒泡当一个组件上的事件被触发后,该事件会向父节点传递。bind事件名<text>事件的冒泡</text> <view class="one" bindtap="handlerOne">one <view class="two" bindtap="handlerTwo">two <view class="three" bindtap="handlerThree">three</view> </view> </view> 阻止事件冒泡catch事件名<text>事件的冒泡</text> <view class="one" bindtap="handlerOne">one <view class="two" catchtap=&q...
2022年09月07日
847 阅读
0 评论
2022-09-04

电脑为啥系统重装后有两个系统

电脑为啥系统重装后有两个系统
一般使用一键重装软件重装系统时软件会将自己默认为开机引导项以实现自动重装,一般来说重装成功后会自动删除,不过有时可能没有删除,所以才会出现开机有两个系统选项的情况。如图所示:我们可以删掉其中的多余的开机引导项即可解决。具体的步骤如下:1、正常开机进入Windows 系统,然后按Win+R打开运行窗口,在窗口中输入msconfig并确定打开。2、然后在高级选项中找到引导,在这里就可以把不需要的开机引导菜单删除即可,点了删除后需要点应用再点确定。这样开机的时候就不会有两个系统了。另外如果真的是不小心安装了两个系统,还可以进磁盘格式化多余的系统盘。
2022年09月04日
1,145 阅读
0 评论
2022-09-03

原生js封装ajax

原生js封装ajax
function ajax(options) { var xhr = null; var type = 'GET'; var params = formsParams(options.data); if (typeof options.type != 'undefined') { type = options.type.toUpperCase(); } //创建对象 if (window.XMLHttpRequest) { xhr = new XMLHttpRequest(); } else { xhr = new ActiveXObject("Microsoft.XMLHTTP"); } if (typeof options.async == "undefined") { options.async = true; } // 设置超时时间(毫秒) if (typeof options.timeout == "undefined&qu...
2022年09月03日
846 阅读
0 评论
2022-07-21

PHP面向对象的链式调用方式

PHP面向对象的链式调用方式
实现起来也还蛮简单的,只需要在每个方法最后返回$this就可以了<?php class wc { public function __construct($who) { echo "{$who}准备去上厕所了"; } public function go() { echo "1.跑出了教室"; return $this; } public function action($ss) { echo $ss . "2.到了厕所,开始尿尿"; return $this; } public function back() { echo "3.尿尿结束,回到教室"; return $this; } } $xm = new wc("小明"); $xm->go()->...
2022年07月21日
734 阅读
0 评论
2022-07-15

微信小程序长按事件

微信小程序长按事件
<view bindtouchstart="touchstart" bindtouchend="touchend">123456</view> //touch start touchstart: function(e) { this.startTime = e.timeStamp; console.log(this.startTime) }, //touch end touchend: function(e) { this.endTime = e.timeStamp; console.log(this.endTime) console.log("endTime - startTime = " + (this.endTime-this.startTime)); if (this.endTime - this.startTime>600){ console.log('长按') ...
2022年07月15日
845 阅读
0 评论
2022-06-16

ThinkPHP 过滤重复数据distinct和group

ThinkPHP 过滤重复数据distinct和group
//distinct方法去重 $data = (new classifyModel())->distinct(true)->field('name')->select()->toArray(); //group方法去重 $data = (new classifyModel())->group('name')->select()->toArray(); 对于两种去重方式: distinct去重、简单易用,但只能对于单一字段去重,并且最终的结果也仅为去重的字段,实际应用价值不是特别大。 group去重,最终的显示结果为所有字段,且对单一字段进行了去重操作,效果不错。
2022年06月16日
953 阅读
0 评论
2022-06-10

PHP面向对象封装MySQL PDO(已使用预处理)

PHP面向对象封装MySQL PDO(已使用预处理)
Mysql.class.php<?php class Mysql { public $link; public function __construct() { $this->conn(); } /** * 连接数据库,从配置文件读取配置信息 */ public function conn() { $cfg = require 'config.php'; try { $this->link = new PDO("mysql:dbname={$cfg['databaseName']};host={$cfg['host']};charset={$cfg['charset']};port={$cfg['port']}", $cfg['name'], $cfg['password']); $this->link->setAttribute(PDO::ATTR_EMU...
2022年06月10日
841 阅读
0 评论