自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(214)
  • 收藏
  • 关注

转载 检测是否是手机访问

检测是否是手机访问/** * 检测是否是手机访问 */function is_mobile(){ $useragent = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : ''; $useragent_commentsblock = preg_match('|\(.*?\)...

2018-12-31 18:07:00 74

转载 curl抓取数据

微信公众号抓取数据,PHP中进行post提交/** * * curl 支持post * @param string $base_url 基础链接 * @param array $query_data 需要请求的数据 * @param string $method 方法 get/post * @param boolean $...

2018-12-31 18:06:00 53

转载 php点击链接直接下载文件写法

down.php<?php$file = "avater.jpg"; //计算机上的一个文件$fileName = basename($file); ...

2018-12-31 18:05:00 642

转载 php 图像处理 抠图,生成背景透明png 图片

*自定义一个图片等比缩放函数 *@param string $picname 被缩放图片名 *@param string $path 被缩放图片路径 *@param int $maxWidth 图片被缩放后的最大宽度 *@param int $maxHeight 图片被缩放后的最大高度 *@param string $pre 缩放后的图片名前缀,默认为"s_" *@retu...

2018-12-31 18:04:00 485

转载 PHP post调接口代码

PHP post调接口代码 /** * $url:接口地址 * $data:数组参数 **/ function postData($url, $data) { $ch = curl_init (); curl_setopt ( $ch, CURLOPT_URL, $url ); curl_setopt ( $ch, CURLO...

2018-12-31 18:03:00 263

转载 PHP 数组辅助函数

/** * 取多维数据中某字段的值 * @param array $array 数据源数组 * @param string|array $field 要获取的字段 * @return array 结果数组 */function array_muliti_field($array, $field){ $res...

2018-12-31 18:02:00 75

转载 php多域名单站点路由

能够使多域名但是只有一个站点的小站,通过路由访问到各个指定目录<?php//域名跳转路由//默认跳转$default = "http://www.stanwind.com/index.php";//自定义域名路由$routers = array( "so.stanwind.com" => "http://www.stanwind.co...

2018-12-31 18:02:00 120

转载 PHP常用字符串函数总结

1查找字符位置函数:strpos($str,search,[int]):查找search在$str中的第一次位置从int开始;stripos($str,search,[int]):函数返回字符串在另一个字符串中第一次出现的位置。该函数对大小写不敏感strrpos($str,search,[int]):查找search在$str中的最后一次出现的位置从int2、提取子字符函数(双字...

2018-12-31 18:01:00 68

转载 生成唯一订单号

生成唯一订单号1$danhao = date('Ymd') . str_pad(mt_rand(1, 99999), 5, '0', STR_PAD_LEFT);生成唯一订单号2$danhao = date('Ymd').substr(implode(NULL, array_map('ord', str_split(substr(uniqid(), 7, 13), 1))...

2018-12-31 17:21:00 105

转载 Linux下防御DDOS攻击的操作梳理

DDOS的全称是Distributed Denial of Service,即"分布式拒绝服务攻击",是指击者利用大量“肉鸡”对攻击目标发动大量的正常或非正常请求、耗尽目标主机资源或网络资源,从而使被攻击的主机不能为合法用户提供服务。DDOS攻击的本质是:利用木桶原理,寻找利用系统应用的瓶颈;阻塞和耗尽;当前问题:用户的带宽小于攻击的规模,噪声访问带宽成为木桶的短板。可以参考下面的...

2018-12-31 17:19:00 401

转载 常用的PHP函数封装,有排序和数据库操作函数

//二分查找function bin_sch($array, $low, $high, $k){ if ($low <= $high) { $mid = intval(($low + $high) / 2); if ($array[$mid] == $k) { return $mid; }...

2018-12-30 17:05:00 59

转载 phpRedis函数使用总结

<?php/*1.Connection*/ $redis = new Redis(); $redis->connect('127.0.0.1',6379,1);//短链接,本地host,端口为6379,超过1秒放弃链接 $redis->open('127.0.0.1',6379,1);//短链接(同上) $redis-...

2018-12-30 17:05:00 81

转载 一次生成多种不同尺寸的缩略图

<?php$filename="1.png";list($src_w,$src_h,$imagetype)=getimagesize($filename);$mime=image_type_to_mime_type($imagetype);//echo $mime;$createfun=str_replace("/","createfrom",$mime);...

2018-12-30 17:04:00 123

转载 防止表单重复提交

<?php /* * PHP简单利用token防止表单重复提交 * 此处理方法纯粹是为了给初学者参考 */ session_start(); var_dump($_POST); function set_token() { $_SESSION['token'] =...

2018-12-30 17:03:00 49

转载 php常用header状态

<?php //200 正常状态 header('HTTP/1.1 200 OK'); // 301 永久重定向,记得在后面要加重定向地址 Location:$url header('HTTP/1.1 301 Moved Permanently'); // 重定向,其实就是302 暂时重定向 header('Location: http...

2018-12-30 17:03:00 113

转载 php 数组助手类

ArrayHelper.php<?php /** * php 数组助手类 * Class ArrayHelper * @package app\helper */class ArrayHelper { /** * @brief get_ids_arr 取得某个二维数组里的id集合 *---------------...

2018-12-30 17:02:00 87

转载 根据ip获取地理信息.php

根据ip获取地理信息.php<?phpfunction getIPLoc_sina($queryIP){ $url = 'http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=json&ip='.$queryIP; $ch = curl_init($url); ...

2018-12-30 17:01:00 42

转载 PHP常用代码片段

/** * 高效判断远程文件是否存在 * @param $file * @return bool 存在返回 true 不存在或者其他原因返回false */function remoteFileExist($file){ if(preg_match('/^http:\/\//',$file)){ //远程文件 if(ini_get('...

2018-12-30 17:00:00 54

转载 PHP生成excle文件

excle_word.php /*** * 生成excle文件 ***/ $time = time(); $filename = date("Y年m月d日h点m分s秒", $time).'问卷数据'; $rows = Sp_Looks_Vote::downvote(); $file = $filename.".cs...

2018-12-30 16:02:00 47

转载 Vue源码解析:AST语法树转render函数

开始今天要说的代码全在codegen文件夹中,在说实现原理前,还是先看个简单的例子!<div class="container"> <span>{{msg}}</span> <button :class="{active: isActive}" @click="han...

2018-12-28 20:34:00 198

转载 vue.js之过渡动画

vue提供了一个封装动画的组件 <transition name="tr"></transition>,将需要执行动画的元素包裹在该组件中,在通过css修改样式即可满足需求命名该动画的样式使用 .v-enter等过渡类名来定义动画 如<transition name="tr"></transition> 的类名为 .tr-entervue一...

2018-12-28 20:32:00 76

转载 bind函数作用、应用场景以及模拟实现

bind函数bind 函数挂在 Function 的原型上Function.prototype.bind创建的函数都可以直接调用 bind,使用: function func(){ console.log(this) } func.bind(); // 用函数来调用bind 的作用:bind() 方法调用后会创建一个新函数。当这个新函数...

2018-12-28 20:31:00 108

转载 document与Object的关系

window与Objet1、 window.__proto__ === Window.prototype2、 window.__proto__.__proto__ === 窗口属性(WindowProperties)3、 window.__proto__.__proto__.__proto__ === EventTarget.prototype4、 Eve...

2018-12-28 20:27:00 73

转载 GIT学习笔记

笔记整理自廖雪峰老师Git教程创建本地版本库1、 创建版本库`git init`2、 把文件添加到仓库(从工作区到暂存区)`git add readme.txt``git add .`3、 把文件提交到仓库(从暂存区到当前分支)`git commit -m 'commit'`添加到远程库4、 添加一个远程库:生成 http://xx...

2018-12-28 20:26:00 37

转载 gitlab 安装、配置

gitlab 安装、配置对于企业级的私有 git 仓库,gitlab 是个不错的选择。今天就来说说 gitlab 的安装、配置。系统配置建议:最低双核 4G 内存。当前针对 gitlab 版本:11.5.3。1. 说明根据官方的安装教程,选取 ubuntu 环境下的社区版进行安装:https://about.gitlab.com/install/#ubuntu?version...

2018-12-28 20:25:00 87

转载 一个php文件就可以把数据库的数据导出Excel表格

数据库内容太多,复制粘贴太麻烦?那就用代码实现把,把代码写好了,导出还不容易吗,访问即可导出。excel.php&lt;?php error_reporting(E_ALL ^ E_DEPRECATED); $localhost = '数据库地址'; $dbname = '数据库名'; $dbuser = '数据库账号'; $dbpw...

2018-12-28 20:20:00 52

转载 关于js计算非等宽字体宽度的方法

准备一个容器首先在body外插入一个absolute的容器避免重绘:const svgWidthTestContainer = document.createElement('svg');svgWidthTestContainer.setAttribute('id', 'svgWidthTest');svgWidthTestContainer.style.cssText = ...

2018-12-28 20:19:00 167

转载 [NodeJs系列]聊一聊BOM

最近在看Node源码的时候,偶然间,看到如下函数:/** * Remove byte order marker. This catches EF BB BF (the UTF-8 BOM) * because the buffer-to-string conversion in `fs.readFileSync()` * translates it to FEFF, the U...

2018-12-28 20:07:00 72

转载 Vue.js路由管理器 Vue Router

起步HTML&lt;script src="https://unpkg.com/vue/dist/vue.js"&gt;&lt;/script&gt;&lt;script src="https://unpkg.com/vue-router/dist/vue-router.js"&gt;&lt;/script&gt;...

2018-12-26 16:31:00 60

转载 vue 实践技巧合集

前言本文纯属个人平时实践过程中的一些经验总结,算是一点点小技巧吧,不是多么高明的技术,如果对你有帮助,那么不胜荣幸。本文不涉及罕见API使用方法等,大部分内容都是基于对vue的一些实践而已。由于涉嫌投机取巧,可能会带来一些不符合规范的副作用,请根据项目要求酌情使用。多个页面都使用的到方法,放在 vue.prototype 上会很方便 刚接触 vue 的时候做过一件傻事,因...

2018-12-26 16:30:00 47

转载 微任务、宏任务与Event-Loop

首先,JavaScript是一个单线程的脚本语言。 所以就是说在一行代码执行的过程中,必然不会存在同时执行的另一行代码,就像使用alert()以后进行疯狂console.log,如果没有关闭弹框,控制台是不会显示出一条log信息的。 亦或者有些代码执行了大量计算,比方说在前端暴力破解密码之类的鬼操作,这就会导致后续代码一直在等待,页面处于假死状态,因为前边的代码并没有执行完。 所...

2018-12-26 16:29:00 105

转载 事件循环(EventLoop)的学习总结

前言在学习eventloop之前,我们需要复习一下js的单线程和异步。虽说js是单线程的,但是在浏览器和Node中都做了相应的处理。如浏览器中的web workers(工作线程),Node中的child_process(子进程)。它们的出现对大量计算的分解起到了促进作用。事件循环当进程启动时,Node会创建一个tick循环,每个tick循环通过内部的观察者来查看是否有事件需要处理,...

2018-12-26 16:25:00 85

转载 Cookie、Session和LocalStorage

前记前面我已经写了一篇关于Cookie的文章,但是那时候我其实理解的并不是很深刻,会有些搞不懂的地方,今天我就再写一次,博客也是我的学习笔记CookieCookie是服务器发送到用户浏览器并保存在本地的一小块数据,它会在浏览器下次向同一服务器再发起请求时被携带并发送到服务器上。通常,它用于告知服务端两个请求是否来自同一浏览器,如保持用户的登录状态。Cookie使基于无状态的HTTP...

2018-12-26 16:23:00 53

转载 学习ES6笔记──工作中常用到的ES6语法

一、let和const在JavaScript中咱们以前主要用关键var来定义变量,ES6之后,新增了定义变量的两个关键字,分别是let和const。对于变量来说,在ES5中var定义的变量会提升到作用域中所有的函数与语句前面,而ES6中let定义的变量则不会,let声明的变量会在其相应的代码块中建立一个暂时性死区,直至变量被声明。let和const都能够声明块级作用域,用法和var是类...

2018-12-26 16:22:00 95

转载 巧妙复制一个流

场景实际业务中可能出现重复消费一个可读流的情况,比如在前置过滤器解析请求体,拿到body进行相关权限及身份认证;认证通过后框架或者后置过滤器再次解析请求体传递给业务上下文。因此,重复消费同一个流的需求并不奇葩,这类似于js上下文中通过 deep clone一个对象来操作这个对象副本,防止源数据被污染。const Koa = require('koa');const app = n...

2018-12-26 16:21:00 68

转载 http-proxy-middleware

概述这是设置代理的神器,webpack的devServer.proxy就是使用了非常强大的 http-proxy-middleware 包。Node.js代理很简单。 轻松配置代理中间件进行连接,发布,浏览器同步等等。代理 /api 向 http://www.example.org请求var express = require('express');var proxy = req...

2018-12-26 16:20:00 125

转载 好用的 Puppeteer 辅助工具 Puppeteer Recorder

PuppeteerPuppeteer 是一个Node库,它提供了一个高级API来控制DevTools协议上的Chrome或Chromium,常用于爬虫、自动化测试等,你在浏览器手动完成的大多数事情都可以使用它来完成。站内有很多文章介绍Puppeteer,此处就不再介绍。但是但是无论是爬虫还是自动化测试,你要写Puppeteer脚本,首先你得分析网页,并且讲道理,每个网站还都不一样...

2018-12-26 16:19:00 227

转载 从一个最简单例子写一个极简双向绑定

目标html&lt;div id="app"&gt; &lt;div&gt;{{ someStr }}&lt;/div&gt;&lt;/div&gt;jslet myMvvm = new Mvvm({ el: document.getElementById('app'), data:...

2018-12-26 16:17:00 51

转载 【ES6】对象的新功能与解构赋值

ES6 通过字面量语法扩展、新增方法、改进原型等多种方式加强对象的使用,并通过解构简化对象的数据提取过程。一、字面量语法扩展在 ES6 模式下使用字面量创建对象更加简洁,对于对象属性来说,属性初始值可以简写,并可以使用可计算的属性名称。对象方法的定义消除了冒号和 function 关键字,示例如下:// Demo1var value = "name", age = 18var...

2018-12-25 12:22:00 84

转载 我所认识的闭包

(~ ̄(OO) ̄)ブ,闭包,一个面试长问的问题,本白也迷糊了很久。慢慢不断地有了自己的一点认识,这里分享一下~~~废话不多说,先看题:var output = (function () { var x = y = 7; return [ function () { console.log(x) }, ...

2018-12-25 12:21:00 32

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除