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 ...
随机推荐
- 【wireshark】总体结构
1. 总体结构 wireshark的总体结构如下图所示. 2. 功能模块 模块名 功能 源码子目录 GTK/Qt 处理所有的用户输入/输出(所有的窗口,对话框等等) /ui GTK: /ui/gtk ...
- 删除 Win10 更新后的 Z 盘符(已验证)
如果你有一些不希望被访客看见的文件.照片或者视频,希望将它隐藏在一个只有自己知道的地方,那么今天的这篇教程非常适合你.我们要实现的最终效果是这样的:在Win10的"此电脑"中,有这 ...
- 2 rocketmq mqadmin 的用法详解
参考文档 http://jameswxx.iteye.com/blog/2091971 1.1. 控制台使用 RocketMQ 提供有控制台及一系列控制台命令,用于管理员对主题,集群,broker 等 ...
- JAVA并发编程学习笔记------多线程调优
1. 多线程场景下尽量使用并发容器代替同步容器 (如ConcurrentHashMap代替同步且基于散列的Map, 遍历操作为主要操作的情况下用CopyOnWriteArrayList代替同步的Lis ...
- NSTimer、performSelector 函数没有被调用的原因
performSelector 指定的方法没有被调用 Invokes a method of the receiver on the current thread using the default ...
- VmWare扩展硬盘分区
扩展硬盘 对硬盘进行分区 () 查看现有的硬盘分区情况 [mysql@china ~]$ df -h Filesystem Size Used Avail Use% Mounted on /dev/m ...
- JavaScript 常见使用误区
JavaScript 常见使用误区,都是平时开发过程中填过的一些坑,整理记录下. 比较运算符常见错误 //在常规的==比较中,数据类型是被忽略的,以下 if 条件语句返回 true: var x = ...
- h5在线1v1客服|web在线客服系统|h5即时聊天
网上有很多环信.美恰之类的客服系统,最近也使用h5+css3+fontJs+swiper+wcPop等技术架构开发了一个在线客服(1v1沟通聊天),可以应用到在线临时聊天.在线咨询等情景.实现了消息. ...
- web.xml详细配置
1.启动一个WEB项目的时候,WEB容器会去读取它的配置文件web.xml,读取<listener>和<context-param>两个结点. 2.紧急着,容创建一个Servl ...
- (转)浅谈MySql的存储引擎(表类型)
原文:http://www.cnblogs.com/lina1006/archive/2011/04/29/2032894.html 什么是MySql数据库 通常意义上,数据库也就是数据的集合,具体到 ...