自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 laravel schedule小记

定时任务 Scheduled Tasks 是 Laravel 提供的组件之一,稍微上点规模的项目应该都会用到,比如开发微信应用时通过定时任务去刷新access token,比如每天定时发推送提醒用户要记得签到。对于定时任务的基本用法,官网文档已经描述得很详细了,这里不再多说。本文主要是介绍定时任务在实际应用中的两个小技巧:1. 多个任务并行执行先简单介绍一下 Laravel 定时任务组件的基

2017-12-05 12:17:56 1164

转载 初识TensorFlow

什么是 TensorFlow?TensorFlow 是一个开源软件库,用于使用数据流图进行数值计算。换句话说,即是构建深度学习模型的最佳方式。本文整理了一些优秀的有关 TensorFlow 的实践 、库和项目的列表。一、教程TensorFlow Tutorial 1 — 从基础到更有趣的 TensorFlow 应用TensorFlow Tutorial 2 — 基于 Goo

2017-12-01 12:24:42 347

原创 关于phantomjs evaluate沙盒环境的点击事件

在最近的项目中运用到了phantomjs做一个爬虫系统,遇到的一个问题。当采集的目标页面如果目标按钮不是button,那么绑定click事件会不生效。经过查阅了资料才发现,沙盒环境里面对于非button的一切元素的click事件都是无效的。要想实现点击事件只能采用原生的Js实现,代码如下。 var clickEvent = document.createEvent("HTM

2017-06-29 18:05:25 925

转载 Headless Chrome入门

Headless Chrome指在headless模式下运行谷歌浏览器。本质就是不用谷歌运行谷歌!它将由Chromium和Blink渲染引擎提供的所有现代网页平台的特征都转化成了命令行。它有什么用?Headless浏览器是一种很好的工具,用于自动化测试和不需要可视化用户界面的服务器。例如,你想在一个网页上运行一些测试,从网页创建一个PDF,或者只是检查浏览器怎样递交URL。

2017-06-29 17:50:09 12176

原创 pm2 监控nodejs项目 常用命令小记

常用命令总结如下:安装pm2npm install -g pm2启动应用pm2 start app.js列出所有应用pm2 list查看资源消耗pm2 monit查看某一个应用状态pm2 describe [app id]查看所有日志pm2 logs重启应用pm2 restart [app id]停止应用pm2 st

2017-06-29 17:43:58 2058

原创 关于HTML标签的反转义函数

最近在项目中需要用到HTML标签的过滤功能最开始认为使用strip_tags 能满足该需求最后才发现 从数据库取出来的HTML标签都被转义了一次  导致strip_tags在过滤时失效了经过查阅资料才发现 首先需要将HTML标签反转义回来才能进行过滤  html_entity_decode() 函数是 htmlentities() 函数的反函数所以在处理前需要经过h

2016-07-15 11:08:19 1674

原创 自定义PHP页面跳转函数redirect($url, $time = 0, $msg = '')

利用PHP的header()函数,可以实现页面跳转,如header("Location: " . $url);但它有个缺点,一旦HTTP报头块已经发送,就不能使用 header() 函数,来发送其它的标头。这个时候只能利用前端HTML或JS技术来实现页面跳转了!怎样知道HTTP报头块已经发送了呢?PHP的 headers_sent() 函数,可以帮忙。

2016-04-08 10:22:26 10232

原创 php将字符首字母大小写转换

每个单词的首字母转换为大写:ucwords()<?php$foo = 'hello world!';$foo = ucwords($foo); // Hello World!$bar = 'HELLO WORLD!';$bar = ucwords($bar); // HELLO WORLD!$bar = ucwords(strtol

2016-04-08 10:17:16 455

转载 NodeJS实现HTTP/HTTPS代理

身在天朝,难免会用到代理的时候。 比如在学校内网用代理免费上外网,在墙内用代理上404网站等。    现在使用的代理大部分为HTTP和Socket代理。 Socket代理更底层,需要本地解析域名,而HTTP代理则是基于HTTP协议之上的,不需要本地解析域名。下面我讲讲HTTP(S)代理的设计思路以及NodeJS代码实现。HTTP协议    HTTP协议简单说来就是浏览器把一串字

2016-03-28 11:22:46 2297

原创 MySQL性能优化经验

1、为查询优化你的查询大多数的MySQL服务器都开启了查询缓存。这是提高性最有效的方法之一,而且这是被MySQL的数据库引擎处理的。当有很多相同的查询被执行了多次的时候,这些查询结果会被放到一个缓存中,这样,后续的相同的查询就不用操作表而直接访问缓存结果了。这里最主要的问题是,对于程序员来说,这个事情是很容易被忽略的。因为,我们某些查询语句会让MySQL不使用缓存。请看下面的示例:// 查

2016-02-26 14:13:19 270

原创 exit()与die()在PHP中的区别

先思考一个问题:如下代码会向页面显示什么?<?phpdie(123);?>曾经有段时间我一直认为 页面会显示 123,但实践结果告诉我,答案错了,页面一片空白!一直不知道为什么,死活不输出123,为了让页面输出123,我把它修改为如下代码:<?phpecho '123';die();?>网上的一段资料:PHP中exit()与die()的区别PHP手册:die(

2016-02-26 14:01:56 458

转载 PHP反射(ReflectionClass、ReflectionMethod)在ThinkPHP框架的控制器调度模块中的应用

ThinkPHP框架的控制器模块是如何实现 前控制器、后控制器,及如何执行带参数的方法?PHP系统自带的 ReflectionClass、ReflectionMethod 类,可以反射用户自定义类的中属性,方法的权限和参数等信息,通过这些信息可以准确的控制方法的执行。ReflectionClass:  [PHP手册]详情主要用的方法:hasMethod(string)  是否存

2016-02-26 13:58:45 3163

原创 PHP二维数组排序

/** * 对二维数组进行排序 * 模拟 数据表记录按字段排序 * * * @list_order($list, $get['orderKey'], $get['orderType']); * * @param array $array 要排序的数组 * @param string $orderKey 排序关键字/字段 * @param string $orderType

2016-02-25 08:45:13 265

原创 高并发数据处理小记

高并发提交数据的思路1、获取post过来的数据2、将数据放进rides里3、1秒后,读取rides里的数据4、将读取的数据整理成sql语句:insert into apply_user(name) values('kkk'),('aaa'),('ccccc');5、执行sql语句

2016-02-24 10:42:45 348

转载 商品库存“存取设计”,MySQL事务、表锁、行锁

MySQL  使用 SELECT ... FOR UPDATE 做事务写入前的确认以MySQL 的InnoDB 为例,预设的 Tansaction isolation level 为REPEATABLE READ,在 SELECT 的读取锁定主要分为两种方式:SELECT ... LOCK IN SHARE MODESELECT ... FOR UPDATE这两种方式在

2016-02-22 09:43:30 3200

原创 修改linux服务器时区

1、查看当前时区和时间date -R2、CentOS中时区是以文件形式存在,当前时区文件位于/etc/localtime其他时区文件位于/usr/share/zoneinfo下,其中中国时区使用Asia/Shanghai则cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime 3、要是改了时区正确的话 就不

2016-02-22 09:41:32 539

原创 JS将JSON字符串转换为JSON对象

在JS中将JSON的字符串解析成JSON数据格式,一般有两种方式:1.一种为使用eval()函数。2. 使用Function对象来进行返回解析。 第一种解析方式:使用eval函数来解析,并且使用jQuery的each方法来遍历用jQuery解析JSON数据的方法,作为jQuery异步请求的传输对象,jQuery请求后返回的结果是json对象,这里考虑的都是服务器返回JSON形式

2016-02-22 09:31:56 562

原创 PHP线程安全和非线程安全的区别

Windows版的PHP从版本5.2.1开始有Thread Safe。这两者不同在于何处?到底应该用哪种?这里做一个简单的介绍。从2000年10月20日发布的第一个Windows版的PHP3.0.17开始的都是线程安全的版本,这是由于与Linux/Unix系统是采用 多进程的工作方式不同的是Windows系统是采用多线程的工作方式。如果在IIS下以CGI方式运行PHP会非常慢,这是由于CG

2016-02-22 09:29:21 368

转载 图片处理类库PHPThumb

【强烈推荐】下载地址(github.com/masterexploder/PHPThumb)。注意这个类库有一个重名的叫phpThumb,只是大小写的差别,所以查找文档的时候千万注意。在网站建设过程中,需要处理图片的地方多不胜数,用PHP的图片函数处理图片,十分繁琐。而且对新手来讲十分不好掌握。现在我们可以用PHPThumb类库来处理图片,包括,图片尺寸调整,图片截取,图片加水印,图片旋转

2016-02-22 09:26:46 929

原创 PHP如何将字符首字母大小写转换

每个单词的首字母转换为大写:ucwords()<?php$foo = 'hello world!';$foo = ucwords($foo); // Hello World!$bar = 'HELLO WORLD!';$bar = ucwords($bar); // HELLO WORLD!$bar = ucwords(strtolowe

2016-02-22 09:24:33 295

原创 PHP错误级别详解

在PHP开发的时候常常会用到error_reporting(report_level)来调试自己的程序,下面列出了report_level可能值:值常量描述1E_ERROR这是一个严重错误,不可恢复,如位置异常,内存不足等2E_WARNING警告,最一般的错误,如函数的参数错误等4E_PARSE解析错误,在解析PH

2016-02-22 09:21:30 541

转载 PHP判断变量是否存在及函数isset() 、empty()与is_null的区别

一、举例说明A.如何判断一个变量是否定义?<?php// 假设不存在$test 变量if (isset($test)){ echo '$test 已经set', '';}else{ echo '$test 没有set', '';}if (empty($test)){ echo '$test 为empty', '';}else{ echo '$test 不

2016-02-22 08:59:47 884

原创 PHP 文件夹文件的拷贝/复制

/** * 文件夹文件拷贝 * * @param string $src 来源文件夹 * @param string $dst 目的地文件夹 * @return bool */function dir_copy($src = '', $dst = ''){ if (empty($src) || empty($dst)) { return false; } $dir =

2016-02-22 08:58:08 335

转载 Linux 新建用户、用户组,给用户分配权限(chown、useradd、groupadd、userdel、usermod、passwd、groupdel)

Linux 系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。用户的账号一方面可以帮助系统管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问;另一方面也可以帮助用户组织文件,并为用户提供安全性保护。每个用户账号都拥有一个惟一的用户名和各自的密码。用户在登录时键入正确的用户名和密码后,就能够进入系统和自己的主

2016-02-19 15:05:06 772

转载 【完全跨域】异步上传文件并获得返回值

AJAX可以进行数据的异步请求,但对于文件和跨域问题却束手无策。Jsonp可以进行跨域数据的异步请求,但同样不能使用于文件。表单可以进行跨域数据和文件的上传,但却会使页面跳转。那么如何同时实现“异步”+“跨域”+“文件”+“返回值”这几个特性呢?方法如下:原理:将表单通过一个iframe来submit,也就是将的target属性设置为一个iframe的id,

2016-02-19 14:49:09 409

原创 Html5页面中存放可拨打电话

拨号发短信

2016-02-19 14:47:02 294

原创 如何删除PHP数组中的元素,并且索引重排

如果要在某个数组中删除一个元素,可以直接用的unset,但是数组的索引不会重排:<?php $arr = array('a','b','c','d');unset($arr[1]);print_r($arr);?> 结果是:Array ( [0] => a [2] => c [3] => d )那么怎么才能做到缺少的元素会被填补并且数组会被重新索引呢?答案是array_splic

2016-02-19 14:44:22 579

原创 加载默认图片,如何避免img标签陷入onerror事件死循环

当图片加载失败的时候,我们可以利用onerror事件赋予它默认图片,但是问题来了,假如默认图片又不存在呢,即加载失败,这个时候就会陷入死循环。为了避免死循环的情况,我们可以在执行完onerror事件后,置于onerror=null 来清除onerror事件,参考代码如下:

2016-02-19 14:09:17 2380

转载 PHP同时上传“多个”文件示例,并格式化$_FILES数组信息

方法1:在html表单,放置多个文件选择框, 使用数组名作为组件的名字,如下: 在服务器端我们可以测试一下提交的信息<?phpprint_r($_FILES);?>输出结果:Array( [upfile] => Array ( [name] => Array (

2016-02-19 14:04:21 1173

原创 PHP导出数据到CSV文件

后台往往需要导出各种数据到 Excel文档中。通常我们是导出 .csv文件格式,PHP导出函数参考代码如下:/** * 导出数据到CSV文件 * * @param array $data 二维数组(模拟数据表记录) * @param array $titleList 标题数组列表 * @param string $fileName CSV文件名 */function csv_expo

2016-02-19 13:55:52 3072

转载 提高PHP代码质量的36个技巧

1.不要使用相对路径常常会看到:require_once('../../lib/some_class.php');该方法有很多缺点:它首先查找指定的php包含路径, 然后查找当前目录.因此会检查过多路径.如果该脚本被另一目录的脚本包含, 它的基本目录变成了另一脚本所在的目录.另一问题, 当定时任务运行该脚本, 它的上级目录可能就不是工作目录了.因此最佳选择是使用绝对

2016-02-19 09:54:58 400

转载 PHP函数篇之( mysql_real_escape_string 与 addslashes )的区别

addslashes 和 mysql_real_escape_string 都是为了使数据安全的插入到数据库中而进行的过滤,那么这两个函数到底是有什么区别呢?首先,我们还是从PHP手册入手:手册上addslashes转义的字符是单引号(')、双引号(")、反斜线(\)与NUL(NULL 字符)。mysql_real_escape_string转义的字符并没有被提到,只是说了一句

2016-02-19 09:39:15 676

原创 Jquery取值简介(radio,select,checkbox)

本文介绍几种常用的取值方式语法:$("#select").change(function(){//code...}); //为Select添加事件,当选择其中一项时触发var checkText=$("#select").find("option:selected").text(); //获取Select选择的Textvar checkValue=$("#select").val

2016-02-19 09:21:20 498

原创 JS跳转到页面某个锚点

JavaScript跳转到页面某个锚点:scroll(0, document.getElementById('锚点ID').offsetTop);

2016-02-19 09:14:06 678

转载 Redis的基本操作及其常用命令

一: Redis介绍Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。从2010年3月15日起,Redis的开发工作由VMware主持。Redis能运行在大多数POSIX(Linux, *BSD, OS X 和Solaris等)系统上,官方没有支持Windows的版本。目前最新的版本是2.2.11,

2016-02-18 16:36:46 4761

转载 MySQL性能优化的最佳20+条经验

今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显。关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我 们程序员需要去关注的事情。当我们去设计数据库表结构,对操作数据库时(尤其是查表时的SQL语句),我们都需要注意数据操作的性能。这里,我们不会讲过多的SQL语句的优化,而只是针对MySQL这一Web应用最多的数据库。希望下面的这些优化技巧对你有用。1. 为查

2016-02-18 16:23:28 264

原创 PHP实用图片压缩方法

<?php/** * 说明:函数功能是把一个图像裁剪为任意大小的图像,图像不变形 * 参数说明:输入 需要处理图片的 文件名,生成新图片的保存文件名,生成新图片的宽,生成新图片的高 */// 获得任意大小图像,不足地方拉伸,不产生变形,不留下空白function my_image_resize($src_file, $dst_file, $new_width, $new_height)

2016-02-18 16:05:05 342

转载 Mysql数据类型浅析

1、整型 MySQL数据类型含义(有符号)tinyint(m)1个字节  范围(-128~127)smallint(m)2个字节  范围(-32768~32767)mediumint(m)3个字节  范围(-8388608~8388607)int(m)4个字节  范围(-2147483648~2147483647)

2016-02-18 15:50:45 220

原创 浅析 MySQL (find_in_set )

示例:有个文章表里面有个type字段,它存储的是文章类型,有 1头条、2推荐、3热点、4图文...1,12,13 等等 。现在有篇文章他既是 头条,又是热点,还是图文,type中以 1,3,4 的格式存储。那我们如何用sql查找所有type中有4图文标准的文章呢?? 这就要我们的find_in_set出马的时候到了。以下为引用的内容: select * fr

2016-02-18 15:29:17 238

转载 MongoDB基本命令大全

DB Shell数据操作shell命令操作语法和JavaScript很类似,其实控制台底层的查询语句都是用JavaScript脚本完成操作的。 #数据库 操作1、Help查看命令提示> help> db.help();> db.yourColl.help();> db.youColl.find().help();> rs.help();2、切换/

2016-02-18 14:32:53 293

空空如也

空空如也

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

TA关注的人

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