学习yii框架源码需掌握的php知识点

常量

  预定义常量:
  __DIR__:返回当前文件所在目录。如果在被包含文件中则返回被包含文件所在目录。注意:除非当前目录是根目录否则返回的字符串后面不带/
  __FILE__:返回当前文件的路径和文件名。如果在被包含文件中则返回被包含文件路径和文件名

变量

  预定义变量:

  $_SERVER:http://php.net/manual/zh/reserved.variables.server.php

函数

dirname:返回给定的路径中的父目录。如果给定的路径中没有/则返回.表示当前目录,否则返回把给定的路径中最后一个/及后面的字符串去掉后剩余的字符串

strncmp($str1,$str2,$len):比较两个字符串开头的若干个字符。如果$str1大于$str2返回大于0,$str1小于$str2返回小于0.相等返回0

substr_compare:http://php.net/manual/zh/function.substr-compare.php

strpos :查找字符串首次出现的位置

substr:返回字符串的子串

rtrim:删除字符串末端的空白字符(或者其他字符)

func_get_args:返回一个包含函数参数列表的数组

array_shift:将数组开头的单元移出数组

get_class:返回对象的类名

realpath:返回规范化的绝对路径名,失败返回false(比如文件不存在)

is_dir:判断给定的文件名是否是个目录,是返回true,不是返回false

date_default_timezone_set:设定用于一个脚本中所有日期时间函数的默认时区

method_exists:检查类的方法是否存在。如果不是已知的类会调用自动加载函数

strlen:获取字符串的长度。如果字符串为空返回0

explode:使用一个字符串分割另一个字符串

str_replace:http://php.net/manual/zh/function.str-replace.php

ucwords:将字符串中的每个单词首字母转换为大写

类型

字符串

单引号:‘‘ 要表达‘需要加上反斜线\转义。表达反斜线\自身用两个反斜线\\

反射

http://php.net/manual/zh/book.reflection.php

时间: 2024-08-28 16:10:30

学习yii框架源码需掌握的php知识点的相关文章

YII框架源码分析(百度PHP大牛创作-原版-无广告无水印)

                        YII 框架源码分析             百度联盟事业部--黄银锋   目 录 1. 引言 3 1.1.Yii 简介 3 1.2.本文内容与结构 3 2.组件化与模块化 4 2.1.框架加载和运行流程 4 2.2.YiiBase 静态类 5 2.3.组件 6 2.4.模块 9 2.5 .App 应用   10 2.6 .WebApp 应用   11 3.系统组件 13 3.1.日志路由组件  13 3.2.Url 管理组件  15 3.3.异常

框架源码|Java、Spring、HTML5、JavaScript、jQuery、Web移动端

A.代码生成器(开发利器) 生成Java各层次的类和JSP等文件,提高开发效率 B.阿里巴巴数据库连接池Druid 性能最好的数据库连接池,稳定.可扩展.高性能.高并发 C.安全权限框架Shiro 实现认证.授权.加密.缓存.并发.会话管理.单点登录等功能 D.Ehcache二级缓存和Spring MVC静态加载缓存 E.微信接口开发 详尽的单元测试代码,详尽的开发文档,每个模块都有详尽说明和代码示例 F.提供基于JBPM工作流的OA办公系统(后续加入Activiti 5.18工作流) ----

Volley框架源码浅析(一)

尊重原创http://blog.csdn.net/yuanzeyao/article/details/25837897 从今天开始,我打算为大家呈现关于Volley框架的源码分析的文章,Volley框架是Google在2013年发布的,主要用于实现频繁而且粒度比较细小的Http请求,在此之前Android中进行Http请求通常是使用HttpUrlConnection和HttpClient进行,但是使用起来非常麻烦,而且效率比较地下,我想谷歌正式基于此种原因发布了Volley框架,其实出了Voll

android-改进<<仿QQ>>框架源码

该文章主要修改于CSDN某大神的一篇文章,本人觉得这篇文章的面向对象很透彻,下面分享如下可学习的几点: Android应用经典主界面框架之一:仿QQ (使用Fragment, 附源码) 1.通过&符号实现计算优化:(后来通过问同事,说是计算机通过位运算 效率比平时的switch效率高,并讲解了该算法的原理.) public class Constant { public static final int SIGN_FRAGMENT_MESSAGE=0x01 <<1; public st

Volley框架源码浅析(二)

尊重原创 http://write.blog.csdn.net/postedit/25921795 在前面的一片文章Volley框架浅析(一)中我们知道在RequestQueue这个类中,有两个队列:本地队列和网络队列 /** The cache triage queue. */ private final PriorityBlockingQueue<Request<?>> mCacheQueue = new PriorityBlockingQueue<Request<

IOS 即时通讯 + 微信聊天框架 + 源码

这些你造吗? 即时通讯(IM),在IOS这片江湖里面已经算是一个老者了,我这小旋风也是在很早以前巡山的时候,就知道有即时通讯这个妖怪,以前也多多少少接触过一些,在造APP的时候用过,哎呀,说着说着就感觉要跑题了,脑海中怎么波涛翻滚的样子.不好,才开头了两句,忍住!!说回正题,我知道的即时通讯有用 CocoaAsyncSocket 还有 XMPPFramework 实现的,当然也有现在也有大部分接入环信的.有些东西掩盖不住的,我是你知道的越多越会觉得自己是个文盲,会有很强烈的感觉,你不懂的真的好多

【java集合框架源码剖析系列】java源码剖析之TreeMap

注:博主java集合框架源码剖析系列的源码全部基于JDK1.8.0版本.本博客将从源码角度带领大家学习关于ArrayList的知识. 一TreeMap的定义: public class TreeMap<K,V> extends AbstractMap<K,V> implements NavigableMap<K,V>, Cloneable, java.io.Serializable 可以看到TreeMap是继承自AbstractMap同时实现了NavigableMap,

关于阅读框架源码后的一些敢想

记得之前做毕业设计的时候看过status1的源码当时感觉挺简单的,不就是写几个xml配置文件然后在利用反射实例化成对象在执行相应的方法吗?当时以为自己好牛啊!以至于在学校做组合项目的时候自己自以为是的写了一个数据层的封装给组员使用,记得当时对外暴露的方法就是sql跟参数,庆幸的是组合项目完成后那个封装既然没出一点问题. 当自己现在再回过头去看status的源码的时候,感觉自己有些看不懂了.这两年也看了不少开源框架的源码像tomcat,heritrix,lucene,openfire,tigase

YII 的源码分析(-)

做为源码分析的首秀,我就挑了yii(读作歪依依而不是歪爱爱):它的赞美之词我就不多说了,直接入正题.先准备材料,建议直从官网下载yii的源码包(1.1.15)最新版本. 在demos里边有一个最简单的应用—helloworld.就是用yii框架输出一句话:”hello world”; 我就从它下手,分析框架执行一个最小流程要经过哪些组件,浅析它的运行过程. 首先从单一入口文件开始阅读.(源码一般都是从调用处开始分析) Index.php-> // include Yii bootstrap fi