自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 yii框架中的andFilterWhere 和 andWhere的区别

附加条件 你可以使用 andWhere() 或者 orWhere() 在原有条件的基础上 附加额外的条件。你可以多次调用这些方法来分别追加不同的条件。 例如,$status = 10;$search = 'yii';$query->where(['status' => $status]);if (!empty($search)) { $query->andWhere(['like', '

2017-05-03 14:06:30 14241 2

转载 Packagist / Composer(中国全量镜像)

镜像用法有两种方式启用本镜像服务:系统全局配置: 即将配置信息添加到 Composer 的全局配置文件 config.json 中。见“方法一”单个项目配置: 将配置信息添加到某个项目的 composer.json 文件中。见“方法二”方法一: 修改 composer 的全局配置文件(推荐方式)打开命令行窗口(windows用户)或控制台(Linux、Mac 用户)并执行如下命令:compos

2017-04-28 14:40:35 605

原创 yii2.0 数据库关联查询

本文章对 2.0 的关联查询做一个简单的介绍 1、设计好关联关系,在这里为大家做了 一个小例子。(Customer 表 model 文件)public function getOrders(){ /** * 第一个参数为要关联的字表模型类名称, *第二个参数指定 通过子表的 customer_id 去关联主表的 id 字段 */ return $this-

2017-03-17 10:45:16 655

原创 jquery事件 trigger()的使用

定义和用法trigger() 方法触发被选元素的指定事件类型。$("#cancel").on("click", function () { $('.cd-popup3').trigger("click"); });上面代码的意思是说通过点击id为cancel,触发class为cd-popup3的点击事件

2017-03-06 14:42:08 879

原创 php 变量

实例<?php$x=5;$y=6;$z=$x+$y;echo $z; //输出11?> PHP 变量与代数类似,可以给 PHP 变量赋予某个值(x=5)或者表达式(z=x+y)。变量可以是很短的名称(如 x 和 y)或者更具描述性的名称(如 age、carname、totalvolume)。PHP 变量规则:变量以 $ 符号开始,后面跟着变量的名称变量名必须以字母或者下划线字符开始

2017-03-01 18:11:14 296

原创 Yii2.0 behaviors方法使用

(1)控制器 behaviors 过滤数据需要引入如下文件use yii\filters\AccessControl;use yii\filters\VerbFilter;首先:什么是过滤器?过滤器就是对不同用户角色的控制; 如(游客->最普通的平民,用户->已经注册的用户,管理员->拥有一切权限) 然而 Yii2自带的权限控制默认只支持两个角色:guest(游客,没有登录的,用 ?

2017-03-01 14:59:26 1177

原创 Yii2.0 scenarios场景应用详解

Yii2.0 场景的使用:举个简单的例子,现在在 post表里面有 title image content 三个的字段,当我创建一个 post 的时候,我想三个字段全部是必填项,但是你修改的时候,title content 两个字段是必填的, iamge 可以不填写。正常的情况下, [[‘title’, ‘content’, ‘image’], ‘required’,], 但是我们更改的时候 只需要

2017-02-27 16:55:51 702 1

原创 yii2.0 ajax登陆验证失败验证码不自动刷新

yii2.0 ajax登陆验证失败实现验证码自动刷新var img = new Image;img.onload=function(){ $('#captchaimg').trigger('click');};img.src = $('#captchaimg').attr('src');

2017-02-27 11:31:02 1176

原创 php 加密函数

password_hash () //加密password_verify() //解密函数具体使用方法请查手册

2017-02-24 12:15:02 674

原创 yii2.0 处理密码

大部分开发者知道密码不能以明文形式存储,但是许多开发者仍认为使用 md5 或者 sha1 来哈希化密码是安全的。 一度,使用上述的哈希算法是足够安全的,但是, 现代硬件的发展使得短时间内暴力破解上述算法生成的哈希串成为可能。为了即使在最糟糕的情况下(你的应用程序被破解了)也能给用户密码提供增强的安全性, 你需要使用一个能够对抗暴力破解攻击的哈希算法。目前最好的选择是 bcrypt。在 PHP 中,

2017-02-24 12:08:42 587

原创 yii2.0 数据提供者

数据提供者是一个实现了 yii\data\DataProviderInterface 接口的类。 它主要用于获取分页和数据排序。它经常用在 data widgets 小物件里,方便终端用户进行分页与数据排序。 下面的数据提供者类都包含在Yii的发布版本里面:yii\data\ActiveDataProvider:使用 yii\db\Query 或者 yii\db\ActiveQuery 从数据库查

2017-02-22 16:22:03 1062

原创 yii2.0 DetailView

Yii提供了一套数据小部件 widgets ,这些小部件可以用于显示数据。 DetailView 小部件能够用于显示一条记录数据, ListView 和 GridView 小部件能够用于显示一个拥有分页、 排序和过滤功能的一个列表或者表格。一个典型的DetailView的使用方法如下:echo DetailView::widget([ 'model' => $model, 'attr

2017-02-22 15:24:15 1194

原创 YII2 Gridview 部分使用规则

Gridview 列表页面,一般在展示列表页面使用1.页面显示的时间戳转换 a.[ 'label'=>'创建日期', 'attribute' => 'created_at', 'filter' => false, //不显示搜索框 'value' => function($data) { return d

2017-02-22 15:11:56 1130

原创 php中传值与传引用的区别

php中传值和传引用的区别,什么时候传值什么时候传引用?传值:是把实参的值赋值给行参 ,那么对行参的修改,不会影响实参的值 传引用 :真正的以地址的方式传递参数传递以后,行参和实参都是同一个对象,只是他们名字不同而已对行参的修改将影响实参的值 php实例1,传值 <?php $param1=1; //定义变量1 $param2=2; //定义变量2 $param2 = $param1;

2016-12-10 11:29:43 957

原创 php常量详解

常量是一个简单值的标识符(名字)。如同其名称所暗示的,在脚本执行期间该值不能改变(除了所谓的魔术常量,它们其实不是常量)。常量默认为大小写敏感。通常常量标识符总是大写的。可以用 define() 函数来定义常量。在 PHP 5.3.0 以后,可以使用 const 关键字在类定义的外部定义常量,先前版本const 关键字只能在类(class)中使用。一个常量一旦被定义,就不能再改变或者取消定义。可

2016-12-01 16:50:37 291

原创 CGI

秒杀和抢购的场景,流量往往是超乎我们系统的准备和想象的。这个时候,过载保护是必要的。如果检测到系统满负载状态,拒绝请求也是一种保护措施。在 前端设置过滤是最简单的方式,但是,这种做法是被用户“千夫所指”的行为。更合适一点的是,将过载保护设置在CGI入口层,快速将客户的直接请求返回。然后什么是CGI呢?CGI(Common Gateway Interface) 是WWW技术中最重要的技术

2016-11-23 11:21:37 3767 1

原创 php 采集

今天复习了一下php的采集,又总结回顾了一下下面是采集新浪首页的新闻模块的标题和超链接路径caiji.php<?php  header('content-type:text/html;charset=utf-8');set_time_limit(0);$url = "http://www.sina.com.cn/";$con = file_get_contents(

2016-11-21 13:08:14 427

原创 OAuth协议原理

OAuth是一个关于授权(authorization)的开放网络标准,在全世界得到广泛应用,目前的版本是2.0版。本文对OAuth 2.0的设计思路和运行流程,做一个简明通俗的解释,主要参考材料为RFC 6749。OAuth的思路OAuth在"客户端"与"服务提供商"之间,设置了一个授权层(authorization layer)。"客户端"不能直接登录"服务提供商

2016-11-18 10:40:23 438

转载 进程与线程的一个简单解释

进程(process)和线程(thread)是操作系统的基本概念,但是它们比较抽象,不容易掌握。最近,我读到一篇材料,发现有一个很好的类比,可以把它们解释地清晰易懂。1.计算机的核心是CPU,它承担了所有的计算任务。它就像一座工厂,时刻在运行。2.假定工厂的电力有限,一次只能供给一个车间使用。也就是说,一个车间开工的时候,其他车间都必须停工。背后的含义就是,单个CPU一

2016-11-18 08:57:38 238

转载 一个老程序员PHP程序员说的话(谨以此片时刻提醒自己)

我,一个老程序员,也是一个学生,把玩过甚多语言,大多不精。我既非名牌学校,也不是高学历,仅代表一部分比较蛋疼的人。接触PHP也是很早了,从04年的OFSTAR开始的,到现在六年了,期间也接触过不少的语言。从脚本JS到底层的C语言。坦诚的说,我不是个高手,但是我相信自己比大多数人接触的知识面要宽广,深刻些吧。同时我也是一名学生,从东南大学到西电,对计算机的爱好一波三折。我这里想说几个

2016-11-02 19:11:16 452

转载 php调用酷狗音乐APi

直入主题最近在m.kugou.com 抓到了酷狗api功能包括:1.获取歌手头像,2.获取下载链接,3.获取歌词4.。。。(0)回复1楼2015-11-07 20:06举报 |个人企业举报垃圾信息举报热门推荐千锋php培训 课程全新升级 g

2016-11-02 15:58:53 5970

转载 跨域

关于跨域,以及跨域的几种方式首先我们来想一想              为什么会有跨域这个名词的出现呢?              跨域又是什么呢?为何要跨域?              浏览器的同源策略又是什么?怎么解决?              jsonp又是什么?              跨域的原理又是什么呢?名词解释:跨域:浏览器对于javascri

2016-10-26 09:00:00 323

原创 图片防盗链原理及实现

防盗链原理: http标准协议中有专门的字段记录referer1、他可以追溯到请求时从哪个网站链接过来的。2、来对于资源文件,可以跟踪到包含显示他的网页地址是什么。因此所有防盗链方法都是基于这个Referer字段网上比较多的2种一种是使用apache文件FileMatch限制,在httpd.conf中增加 ( 其实也可以将把下面的语句存成一个.htaccess文件),并

2016-10-21 08:19:55 15430

原创 php单例模式

注意:1.外部不可以实例化,因此内部实例化函数的类型必须为静态,在类未实例化之前就已经初始化;2.静态函数只能访问静态变量,所以定义private static $instance;3.静态变量的访问写法为:类名::$变量名,在类内部可以直接写self:$instance;4.可以用instanceof这个关键字检测变量中存放的是不是当前的类实例。<?php //php下的

2016-10-18 19:58:51 311 1

原创 mvc(composer加载twig)

前面我们通过composer来加载medoo的框架,这节课我们通过composer来加载twig的模板引擎首先我们在我们的composer.json的require里加入"twig/twig":"*"然后在项目的根目录执行composer update命令进行安装twigtwig安装完以后我们只需要修改immooc基类里面的display方法imooc.phppublic fu

2016-10-07 09:33:48 990

原创 mvc(composer 之 medoo)

这小节我们来学习通过composer来加载轻量级的php数据库框架,来提高我们在针对数据库的一些操作时候的开发效率我们现在composer.json 的require里加入"catfan/medoo":"*"然后在命令行项目根目录执行composer update命令这样我的medoo框架就已经下载好了首先修改我们的模型文件core\lib\model.php<?p

2016-10-04 18:54:19 582

原创 mvc(composer加载)

composer前面我们已经完成了框架中的大部分功能,这小节我们来讲用composer来加载我们前面完成的一些功能首先我们先来了解一下什么是composerComposer 是 PHP 的一个依赖管理工具。它允许你申明项目所依赖的代码库,它会在你的项目中为你安装他们。Composer 不是一个包管理器。是的,它涉及 "packages" 和 "libraries",但它在每个项

2016-10-04 17:10:01 416

原创 mvc(日志类)

日志类今天我们来完成一个新的功能,这个功能是所有框架中必不可少的功能——日志类,日志类和其他的类有一定的区别,因为日志有可能存储在文件中,有可能存储在数据库中,也甚至存在缓存当中,所以我们在完成日志类的时候需要用到一种新的设计模式。这里我们实现的是文件存储 具体实现如下:首先在lib目录下新建一个log.php<?phpnamespace core\lib;cla

2016-10-03 20:59:29 642

原创 mvc(配置加载类)

配置类   先前我们的框架基本都封装好了,有些配置文件写在当前的文件里,为了提高我们框架的健壮性,我们来配置一个配置类,通过这个配置类来加载我们的一些配置。 首先我们创建一个conf.php文件和routh.php文件,routh.php文件来定义默认的访问的控制器和路由,conf.php来实现这些配置,具体配置如下:Routh.php<?phpreturn array(

2016-10-02 20:05:48 477

原创 mvc(2)

加载控制器首先我们创建一个相应的控制器然后在imooc.php的run 方法里代码如下

2016-09-29 20:03:04 388

原创 mvc(1)

在我们自己要封装一个框架之前,我们首先要知道一般框架的运行流程如下接下来就挨个流程给大家做详细的介绍。入口文件入口文件的内容一般包括如下3点1.定义常量2.加载函数库3.启动框架<?php/** * 入口文件 * 1.定义常量 * 2.加载函数库 * 3。启动框架 */ //定义常量 define('IMOOC',dirname($_

2016-09-29 14:20:43 232

原创 mvc简单的认识

说到mvc,首先大家要知道什么是mvc?MVC全名是Model View Controller ,是模型,视图,控制器的缩写,是一种设计模式,或者说是编程思想。是一种业务逻辑和数据显示分离的方法组织代码。学习mvc的目的1.能够快速上手各大主流php框架,如yii,tp,ci等2.快速适应多数web开发的需求3.逐步接触和了解web系统架构的知识,为日后成为系统架构的中坚力量做

2016-09-28 19:08:27 444

原创 微信入门教学之自动回复和自定义菜单

1.首先注册一个微信公众号,然后登陆  https://mp.weixin.qq.com2.登陆成功以后有订阅号、测试号等,订阅号很多功能没有权限,这里我们选择测试号  在“开发者工具------>公众平台测试账号”,点击进入,登陆到测试账号3.对于刚接触微信开发,我们打开微信开发手册,先看接入指南,下载demo4.将demo放到我们的服务器上直接运行,这里先跳过服务器地址的验证,

2016-09-28 17:07:44 670

原创 分页

/** * 分页 控制器 */ public function actionFenye(){ $data=\Yii::$app->db->createCommand("select * from account")->queryAll(); //总记录数 $count=count($data)

2016-09-23 09:35:54 234

原创 批量删除+即点即改

var str = ''$("#del").click(function(){ $('input[name="checkbox"]:checked').each(function(){ str += ','+$(this).val() }) $.post("{{url('/index/delete')}}",{'str':str},function(msg){ })})

2016-09-22 08:52:40 343

原创 数据库的备份及恢复

突然想起以前laravel框架里做的数据库的备份和恢复,现在拿来和大家一起分享一下首先先说下数据库的备份吧/** * 展示导出表单 * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View */ public function showIndex(){ $da

2016-09-20 21:23:51 1183 1

原创 一般电商的几种订单状态

今天又回顾起了电商里订单方面的几种状态,一下是本人自己的总结,大家多提点意见,一起学习进步当用户点击“一键购买”或者是从购物车里点击 “去结算” ,会跳转到 “核实订单信息”  页面,当全部核实以后点击“提交订单按钮”,此时会跳转到支付页面,并且订单提交成功,此时此刻才算刚刚开始:订单提交成功    此时的订单状态默认为未确认支付成功            此时订单状态为已确认

2016-09-18 20:07:00 30770 2

原创 购物车实现原理

本人对购物车的实现原理不是很清楚,今天查阅各种资料以及自己对京东商城购物车方面的观察,小小总结了一下购物车方面的实现原理:当用户进行购物时他有可能是本商电的会员或游客(非会员);因此得出两种方案:方案一:(会员)  用户进行购物时他是我们本商店的会员(数据库中存在该用户的数据),当用户添加商品到购物车的时候我们可以分为两种方法;  方法一,    当用户购买商品添加到购物车时没

2016-09-18 19:33:16 5144 2

原创 网页实现自动跳转

在在之间加入如下代码:CONTENT是设置几秒后跳转网页

2016-09-18 11:51:03 429

原创 用sql语句创建表

create table news(   news_id  INT NOT NULL PRIMARY KEY AUTO_INCREMENT,   news_name  VARCHAR(255) NOT NULL,   news_class  VARCHAR(255) NOT NULL,   news_time   datetime,   news_man     VARCHAR(255) NOT

2016-08-11 21:17:20 2580

空空如也

空空如也

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

TA关注的人

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