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 ...
随机推荐
- Redis初探,写个HelloWorld
资源获取 https://redis.io/download 从官网上下载redis的源码,使用gcc的安装方式. 安装 make make install 需要达到的效果是,在/usr/local/ ...
- (转)Python - 字符串对齐
https://zhuanlan.zhihu.com/p/33923344-----------Python小知识:用format格式化输出字符串 版权声明:本文为博主原创文章,未经博主允许不得转载. ...
- Builder生成器(创建型模式)
一.使用场景: 1.假设要创建一个House设施,该设施的创建由若干个部分组成,而且这若干个部分经常变化. 如果用最直观的设计方式,每一个房屋部分的变化,都将导致整个房屋结构的重新修正,但是这种设计方 ...
- Hadoop1.x集群安装部署(VMware)
一.hadoop版本介绍 不收费的Hadoop版本主要有三个(均是国外厂商),分别是:Apache(最原始的版本,所有发行版均基于这个版本进行改进).Cloudera版本(Cloudera’s Dis ...
- 过虑器应用之1-设置request编码
一:设置Post编码 post请求接收中文,需要在Servlet里写上 request.setCharacterEncoding("UTF-8"); 否则默认以iso-8859-1 ...
- CharacterRangeTable
转载:https://github.com/jacoco/jacoco/wiki/CharacterRangeTable This page discusses a not yet available ...
- ugui使用自带功能实现反向遮罩
不需要编写额外的shader和任何代码,只使用自带的功能 新建一个材质球,取名为mask,选择自带的UI/Default,调节参数如下图 再新建一个材质球,取名为masked,调节参数如下图 如下图所 ...
- Java 集合框架:HashMap
原文出处:Java8 系列之重新认识 HashMap 摘要 HashMap 是 Java 程序员使用频率最高的用于映射 (键值对) 处理的数据类型.随着 JDK(Java Developmet Kit ...
- Oracle 12c Lnux 启动脚本
#!/bin/bash # #oracle: Start/Stop Oracle Database 11g R2/12c # # chkconfig: # description: The Oracl ...
- 解决启动mongod 时,出现addr already in use错误
启动mongod root@wangyuyu-Vostro-1440:/usr/bin# ./mongod 错误提示: Sat Aug 17 09:02:02 [initandlisten] ER ...