摘要: 文档: 文档地址: https://www.kancloud.cn/cleverstone/ymb2 简介: Yii Manager 2.0 简单介绍 Yii Manager 2.0是基于PHP框架yii2.0为底层框架编写的,敏捷、灵活、低代码的快速开发框架!- Yii Manager 2.0是Y 阅读全文
posted @ 2023-10-12 13:35 clevstn 阅读(118) 评论(0) 推荐(0) 编辑
摘要: 我们通常衡量一个Web系统的吞吐率的指标是QPS(Query Per Second,每秒处理请求数),解决每秒数万次的高并发场景,这个指标非常关键。举个例子,我们假设处理一个业务请求平均响应时间为100ms,同时,系统内有20台Apache的Web服务器,配置MaxClients为500个(表示Ap 阅读全文
posted @ 2018-09-28 00:20 clevstn 阅读(1854) 评论(0) 推荐(0) 编辑
摘要: 一、restfulAPI 1、解释: restfulAPI协议,我们也可以说是一套API接口编写风格。 它被现在很多企业所认可和默认,是一套成俗的API接口编写方案。 2、restfulAPI之资源 例一: 在PHP中,我们对数据表操作,我们会在我们的项目中构建一个model,通过控制器对model 阅读全文
posted @ 2018-08-25 12:00 clevstn 阅读(1994) 评论(0) 推荐(0) 编辑
摘要: 一、正则反引用 正则表达式,在PHP中我经常能用到。用的场景也很多,比如,正则匹配字符串,判断字符是否存在,正则替换等等。 例子一: 这里用到了正则的捕获组概念和反引用。 解释: 捕获组我们可以从第一个`(` 向后数, 第一个括号里面匹配到的内容,我们可以用 \1 来引用,为了看的明显,特意拼接了 阅读全文
posted @ 2018-08-24 13:14 clevstn 阅读(658) 评论(0) 推荐(0) 编辑
摘要: 一、函数解析 is_callable() 定义: (PHP 4 >= 4.0.6, PHP 5, PHP 7) is_callable — 检测参数是否为合法的可调用结构 bool is_callable ( callable $name [, bool $syntax_only = false [ 阅读全文
posted @ 2018-08-23 15:54 clevstn 阅读(537) 评论(0) 推荐(0) 编辑
摘要: 一、前言 个人认为,PHP是世界上为数不多,最人性化的语言。 虽然是二次开发、弱类型语言,由C/C++编写的PHP引擎去解析。但是,其代码优雅性和其运行速度不亚于,其他编译语言。 二、PHP数据加密 数据加密的类型有: MD5、sha1、sha256、CRC32多项式冗余校验等。 1. MD5、sh 阅读全文
posted @ 2018-08-10 14:56 clevstn 阅读(2619) 评论(0) 推荐(0) 编辑
摘要: 一、前言 首先,yii2最为为数不多的PHP主流开源框架,受欢迎程度不亚于laravel和TP。个人认为,研究这些框架底层代码是非常有助于自身代码编程思想的提升和代码简化程度和质量的提升的。 那么,话不多说,下面开始说一下自己对yii2底层框架架构的理解。 二、客户端请求处理 yii2对客户请求处理 阅读全文
posted @ 2018-08-10 09:07 clevstn 阅读(1638) 评论(0) 推荐(0) 编辑
摘要: 一、计算机的由来 很久很久以前,有一群人,他们决定用8个可以开合的晶体管来组合成不同的状态,以表示世界上的万物。他们看到8个开关状态是好的,于是他们把这称为”字节“。再后来,他们又做了一些可以处理这些字节的机器,机器开动了,可以用字节来组合出很多状态,状态开始变来变去。他们看到这样是好的,于是它们就 阅读全文
posted @ 2018-07-05 23:17 clevstn 阅读(2436) 评论(0) 推荐(1) 编辑
摘要: 1. 什么是REST 1. 什么是REST 1. 什么是REST 1. 什么是REST REST全称是Representational State Transfer,中文意思是表述(编者注:通常译为表征)性状态转移。 它首次出现在2000年Roy Fielding的博士论文中,Roy Fieldin 阅读全文
posted @ 2018-06-27 15:04 clevstn 阅读(4852) 评论(0) 推荐(0) 编辑
摘要: 一、前言 上一篇文章我们已经大致谈过RBAC到底是什么和yii2底层RBAC接口的分析。 下面我深入理解一下RBAC权限分配,深入理解下yii2底层RBAC扩展,以及它是如何针对模块化系统的开发的? 二、介绍 2.1 下面是张大致的思维导图: 由图可见,我们对yiiRABC底层接口的扩展逻辑。 2. 阅读全文
posted @ 2018-06-25 19:32 clevstn 阅读(940) 评论(0) 推荐(0) 编辑
摘要: 一、简介 什么是rbac ? rbac是就是基于角色的访问控制。 yii提供一套基础的底层接口,我们知道,rbac经历好几个阶段,从rbac0到rbac3,从基础的用户、角色、权限,到动态的rbac处理模式,再到现在的权限继承,解决复杂的多页面元素权限分配。 总而言之,rbac有三个特性。 1. 基 阅读全文
posted @ 2018-06-23 22:59 clevstn 阅读(505) 评论(0) 推荐(0) 编辑
摘要: 一、 单例模式 顾名思义, 单例模式就是只实例一次,通过一个接口去实现多处需要的同一类对象的需求。 例子: 这是yii2应用组件容器,Appliction中的构造方法,通过构造函数,给类实现单例接口,给静态变量$app注册web应用对象。 2、 工厂模式(策略模式) 顾名思义,工厂模式就是像工厂的机 阅读全文
posted @ 2018-06-21 20:46 clevstn 阅读(1017) 评论(0) 推荐(0) 编辑
摘要: 一、 PHP对数组的过滤 函数: array_filter(p1[,p2]) 参数p1是要过滤的数组,参数p2是自定义过滤会掉函数(可以是匿名函数) 例子: 总结: array_filter(p1[,p2])函数可以自定义过滤, 在不填写第二参数的情况下默认取出数组中为false的元素; 二、 PH 阅读全文
posted @ 2018-06-19 16:07 clevstn 阅读(333) 评论(0) 推荐(0) 编辑
摘要: 1. 命名规范 (1).变量命名规范 例如 :$itSports 例如评论:$commentArr 例如 数组变量后加Arr :$commentArr,数值: $commentInt 例如:$i,$j。 (2).常量命名规范 例如: define(‘AAA_BBB_CCC’, ‘true’); (如 阅读全文
posted @ 2018-06-16 14:22 clevstn 阅读(616) 评论(0) 推荐(0) 编辑
摘要: 一、前言 php是世界上最好的语言 php从面向过程走到现在成熟的面向对象体系, 在php面向对象中,静态变量的调用我们可以用这两个self::method和 static::method, 但是很多童鞋迷惑,不理解self::method和static::method有什么区别,下面给出两个例子一 阅读全文
posted @ 2018-06-15 18:29 clevstn 阅读(341) 评论(0) 推荐(0) 编辑
摘要: 一、前言 php是世界上最好的语言! 二、介绍 mktime()函数获取当周\当天\当月 date()函数获取日/周/年 如果用date()函数获取当天的时间,则去掉第二参数即可; 例如: date('w'), date('now'), date('m') 阅读全文
posted @ 2018-06-15 16:26 clevstn 阅读(752) 评论(0) 推荐(0) 编辑
摘要: 一、前言 对于很多的PHP小白来说,命名空间是什么,为什么要声明命名空间呢? 他们总是感到困惑!以下是本人的理解,望对童鞋们有所帮助。 二、介绍 命名空间是一个函数或者一个类的唯一标识。在流行的框架Lavaral,ThinkPHP,Yii等框架中,特别是结构复杂的文件层次和海量的代码中,相同的类名和 阅读全文
posted @ 2018-06-14 22:05 clevstn 阅读(279) 评论(0) 推荐(0) 编辑
摘要: 一、前言 个人认为,PHP是世界上最好的语言。 二、介绍 查看yii2底层源码, 发现 mb_strlen($str, '8bit') , 此函数的不是PHP的核心函数, 所以需要开启对应的扩展. 函数第一个参数是string类型, 第二个参数是个编码字符集, 比如: utf-8, gbk, uni 阅读全文
posted @ 2018-06-13 17:31 clevstn 阅读(798) 评论(0) 推荐(0) 编辑
摘要: 一、前言 说到PHP输出控制, 在很多框架里面,比如说TP,Yii和Laraval的模版引擎里面都有输出控制函数的阴影,输出控制也叫输出缓冲,说到它的作用有以下几点。 二、内容 1、 输出模版 2、实时输出 3、捕获没有返回值的函数,比如: var_dump(),phpinfo(),echo,pri 阅读全文
posted @ 2018-06-13 10:03 clevstn 阅读(298) 评论(0) 推荐(0) 编辑
摘要: 对于刚入门的PHP童鞋们来说,在循环体中的continue和break的作用总是分不清到底是什么意思, 怎么用, 两者到底有什么区别? 接下来说几个例子,其实它们是很好区分的。 总结一下: continue命令会终止循环体的单次循环,代码并继续往下执行下去。 continue和continue1是相 阅读全文
posted @ 2018-06-13 00:01 clevstn 阅读(23837) 评论(0) 推荐(0) 编辑
摘要: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>原型链闭环</title> <script src="./jquery.js"></script> </head> <body> <div class="con 阅读全文
posted @ 2023-12-27 16:51 clevstn 阅读(2) 评论(0) 推荐(0) 编辑
摘要: 1. 概述 本文以淘宝作为例子,介绍从一百个到千万级并发情况下服务端的架构的演进过程,同时列举出每个演进阶段会遇到的相关技术,让大家对架构的演进有一个整体的认知,文章最后汇总了一些架构设计的原则。 特别说明:本文以淘宝为例仅仅是为了便于说明演进过程可能遇到的问题,并非是淘宝真正的技术演进路径 2. 阅读全文
posted @ 2019-12-19 18:11 clevstn 阅读(380) 评论(0) 推荐(0) 编辑
摘要: 一、TCP/IP协议 TCP/IP 是不同的通信协议的大集合。 1、TCP - 传输控制协议 TCP 用于从应用程序到网络的数据传输控制。 TCP 负责在数据传送之前将它们分割为 IP 包,然后在它们到达的时候将它们重组。 2、IP - 网际协议 IP 负责计算机之间的通信。 IP 负责在因特网上发 阅读全文
posted @ 2018-08-22 17:17 clevstn 阅读(2216) 评论(0) 推荐(0) 编辑
摘要: 一、前言 前面的博客里,有对字符集的解析。这里就不是字符集的事儿了,在PHP中很多函数的处理默认是unicode中的UTF-8编码格式。那么废话不多说,直接开始正题。 二、PHP函数mb_split解析 打印结果: 此函数默认底层解析,以UTF-8的编码格式解析。以分隔符(、)的UNICODE的16 阅读全文
posted @ 2018-08-22 11:38 clevstn 阅读(415) 评论(0) 推荐(0) 编辑