php初学记
开始和结束标记
- 常用两种:
<?php ?>,<script language="php"></script> - 短标记:
<? ?>,需打开php.ini文件的short_open_tag指令 - ASP风格标记:
<% %>,需打开php.ini文件的asp_tags指令
php数据类型(9种)
- 四种标量类型
- boolean
- integer
- float
- string
- 三种复合类型
- array
- object
- callable(可调用)
- 两种特殊类型
- resource(资源)
- NULL(无类型)
- 伪类型
- mixed(混合类型)
- number(数字类型)
- callback(回调类型,又称callable)
- array|object
- void
- 伪变量$...
- 类型检测函数(is_type),eg:
is_string($str)
超全局变量
- $GLOBALS
- $_SERVER:保存关于报头、路径、脚本位置等信息
- $_REQUEST:收集html表单提交的数据
- $_POST
- $_GET
- $_FILES
- $_ENV
- $_COOKIE
- $_SESSION
在函数体内访问全局变量
- global $variable_name
- $GLOBALS[variable_name]
设置常量
define(const_name, const_value, boolean)
- const_name:常量名
- const_value:常量值
- boolean:常量名大小写敏感,默认false敏感,true不敏感
创建数组
array()- 获取数组长度
count($arr) - 数组排序:升序
sort(),降序rsort() - 数组键排序:升序
ksort(),降序krsort() - 数组值排序:升序
asort(),降序arsort()
foreach 循环(只用于数组)
foreach($array as $value) {}foreach($array as $key => $value) {}
魔术变量
__LINE__:当前行号__FILE__:文件完整路径和文件名__DIR__:文件所在目录__FUNCTION__:函数名称__METHOD__:类的方法名__NAMESPACE__:当前命名空间的名称
面向对象
- 类使用class关键字后加上类名定义
- 类名后的一对大括号({})内可以定义变量和方法
- 类的变量使用var来声明,变量也可以初始化值
- 函数定义类似php函数的定义,但只能通过该类及其实例化的对象访问
- 构造函数
function __construct($arg1, $arg2, ...),主要用来初始化对象 - 析构函数
function __destruct(),在对象生命周期结束时调用,可销毁变量 - 继承
extends,php不支持多继承 - 方法重写,子类可改写父类方法以满足需求
- 对属性或方法的访问控制:
public、protected、private - 接口
interface - 常量用
const定义,无需$ - 抽象类
- 声明为static的属性或方法,可以不实例化类而直接访问
- 父类方法被声明为final,子类无法覆盖与继承
- 子类调用父类构造方法
parent::__construct()
php初学记的更多相关文章
- Dancing Links初学记
记得原来备战OI的时候,WCX大神就研究过Dancing Links算法并写了一篇blog.后来我还写了个搜索策略的小文章( http://www.cnblogs.com/pdev/p/3952279 ...
- DIV+CSS初学随记
字间隔word-spacing 属性可以改变字(单词)之间的标准间隔.其默认值 normal 与设置值为 0 是一样的. word-spacing 属性接受一个正长度值或负长度值.如果提供一个正长度值 ...
- 记初学python的一些心得
人生苦短,我用python! 其实我自学python也很长一段时间了,但总是去更换学习资料,搞的现在学的不是很好,因为没更换次资料都要从头开始学起,那么分享下我的学习战况吧,不是很好,还将就的能看. ...
- 初学mysql 那些记不住的命令
修改密码: https://dev.mysql.com/doc/refman/5.7/en/resetting-permissions.html MySQL 5.7.6 之后: ALTER USER ...
- 记初学net-SNMP
自从弄完那个jsp的网盘(其实还是个烂摊子),这几天一直在研究snmp. 有需求就激发动力,对,人都是被逼出来的.五一这几天,天天搁这坐着,毫无头绪. 下面切入正题. 要做一个监控园区网在线数的平台, ...
- dubbo初学采坑记
写在前面的话 dubbo 现在是apache组织旗下的项目,相信国内也有很多人使用.最近一个同事离职,我就接手了他的项目.远程通讯就是用的dubbo框架来实现的.使用Intelij idea 写了一个 ...
- 初学Linux基本的命令操作应当记牢
Linux管理文件和目录的命令 命令 功能 命令 功能 pwd 显示当前目录 ls 查看目录下的内容 cd 改变所在目录 cat 显示文件的内容 grep 在文件中查找某字符 cp 复制文件 touc ...
- webpack初学踩坑记
注意事项: 1. webpack不用装在全局环境下,在哪个项目中使用,就安装在该项目下即可 1. 问题一:npm init 初始化一个项目后,添加webpack.config.js文件,在该项目中通过 ...
- cuda 初学大全
转自:http://blog.csdn.net/augusdi/article/details/12529331 cuda 初学大全 1 硬件架构CUDA编程中,习惯称CPU为Host,GPU为Dev ...
随机推荐
- springmvc 简单框架
1.依赖 2.web.xml配置: 3.springmvc配置文件: 4.Controller 5.index.jsp页面: 6.hello.jsp 7.效果:
- JS-DOM Element方法和属性
JS-DOM Element方法和属性 S-DOM Element方法和属性一,获取html元素1.getElementByID(id)通过对元素的ID访问,这是DOM一个基础的访问页面元素的方法.e ...
- nginx添加认证
1.检查工具是否安装,如果未安装则使用yum安装 #htpasswd 有以上输出表示已经安装,如果没有按装,使用如下命令安装: #yum -y install httpd-tools 2.htpas ...
- 配置文件备份方案(expect+shell)
需求描述:备份所有线上服务器squid.httpd.mysql.nginx的配置文件 环境:在公司内网采用expect+shell脚本模式,进行批量备份.expect脚本通过ssh登录服务器,从本地c ...
- express中间件原理 && 实现
一.什么是express中间件? 什么是express中间件呢? 我们肯定都听说过这个词,并且,如果你用过express,那么你就一定用过express中间件,如下: var express = re ...
- docker学习(2)--基础命令
转载请注明源出处:http://www.cnblogs.com/lighten/p/6875355.html 1.基本命令 搭建好docker环境之后,使用docker help命令查看docker的 ...
- Android 开发工具类 05_Logcat 统一管理类
Logcat 统一管理类: 1.默 认tag 的函数: 2.自定义 tag 的函数. import android.util.Log; // Logcat 统一管理类 public class L { ...
- C/C++ -- Gui编程 -- Qt库的使用 -- 理解主窗体构造函数
MyWidget做父窗体 MyWidget的构造函数中可以手动添加组件 Ui::MyWidget存放子部件 Ui::MyWidget执行setupUi()函数为子部件开辟空间,指定父窗体 MyWidg ...
- Ceph 块设备 - 命令,快照,镜像
目录 一.Ceph 块设备 二.块设备 rbd 命令 三.操作内核模块 四.快照基础 rbd snap 五.分层快照 六.镜像 rbd mirror 七.QEMU 八.libvirt 九.Openst ...
- Memcached理解笔记4---应对高并发攻击
近半个月过得很痛苦,主要是产品上线后,引来无数机器用户恶意攻击,不停的刷新产品各个服务入口,制造垃圾数据,消耗资源.他们的最好成绩,1秒钟可以并发6次,赶在Database入库前,Cache进行Mis ...