开始和结束标记

  1. 常用两种:<?php ?>,<script language="php"></script>
  2. 短标记:<? ?>,需打开php.ini文件的short_open_tag指令
  3. ASP风格标记:<% %>,需打开php.ini文件的asp_tags指令

php数据类型(9种)

  1. 四种标量类型
  • boolean
  • integer
  • float
  • string
  1. 三种复合类型
  • array
  • object
  • callable(可调用)
  1. 两种特殊类型
  • resource(资源)
  • NULL(无类型)
  1. 伪类型
  • mixed(混合类型)
  • number(数字类型)
  • callback(回调类型,又称callable)
  • array|object
  • void
  1. 伪变量$...
  2. 类型检测函数(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不支持多继承
  • 方法重写,子类可改写父类方法以满足需求
  • 对属性或方法的访问控制:publicprotectedprivate
  • 接口interface
  • 常量用const定义,无需$
  • 抽象类
  • 声明为static的属性或方法,可以不实例化类而直接访问
  • 父类方法被声明为final,子类无法覆盖与继承
  • 子类调用父类构造方法parent::__construct()

php初学记的更多相关文章

  1. Dancing Links初学记

    记得原来备战OI的时候,WCX大神就研究过Dancing Links算法并写了一篇blog.后来我还写了个搜索策略的小文章( http://www.cnblogs.com/pdev/p/3952279 ...

  2. DIV+CSS初学随记

    字间隔word-spacing 属性可以改变字(单词)之间的标准间隔.其默认值 normal 与设置值为 0 是一样的. word-spacing 属性接受一个正长度值或负长度值.如果提供一个正长度值 ...

  3. 记初学python的一些心得

    人生苦短,我用python! 其实我自学python也很长一段时间了,但总是去更换学习资料,搞的现在学的不是很好,因为没更换次资料都要从头开始学起,那么分享下我的学习战况吧,不是很好,还将就的能看. ...

  4. 初学mysql 那些记不住的命令

    修改密码: https://dev.mysql.com/doc/refman/5.7/en/resetting-permissions.html MySQL 5.7.6 之后: ALTER USER ...

  5. 记初学net-SNMP

    自从弄完那个jsp的网盘(其实还是个烂摊子),这几天一直在研究snmp. 有需求就激发动力,对,人都是被逼出来的.五一这几天,天天搁这坐着,毫无头绪. 下面切入正题. 要做一个监控园区网在线数的平台, ...

  6. dubbo初学采坑记

    写在前面的话 dubbo 现在是apache组织旗下的项目,相信国内也有很多人使用.最近一个同事离职,我就接手了他的项目.远程通讯就是用的dubbo框架来实现的.使用Intelij idea 写了一个 ...

  7. 初学Linux基本的命令操作应当记牢

    Linux管理文件和目录的命令 命令 功能 命令 功能 pwd 显示当前目录 ls 查看目录下的内容 cd 改变所在目录 cat 显示文件的内容 grep 在文件中查找某字符 cp 复制文件 touc ...

  8. webpack初学踩坑记

    注意事项: 1. webpack不用装在全局环境下,在哪个项目中使用,就安装在该项目下即可 1. 问题一:npm init 初始化一个项目后,添加webpack.config.js文件,在该项目中通过 ...

  9. cuda 初学大全

    转自:http://blog.csdn.net/augusdi/article/details/12529331 cuda 初学大全 1 硬件架构CUDA编程中,习惯称CPU为Host,GPU为Dev ...

随机推荐

  1. LINUX中如何查看某个端口是否被占用

    之前查询端口是否被占用一直搞不明白,问了好多人,终于搞懂了,现在总结下: 1.netstat  -anp  |grep   端口号 如下,我以3306为例,netstat  -anp  |grep   ...

  2. centos7系统的进程管理

    使用top命令,实时查看后台的进程,会看到以下信息 官方的解释: us: user cpu time (or) % CPU time spent in user space sy: system cp ...

  3. iOS多线程---GCD中线程的通信

    在子线程的任务完成后,有时候需要从子线程回到主线程,刷新UI. 从子线程中回到主线程,以前已经写过一种方法: [self.imageView performSelectorOnMainThread:@ ...

  4. CSS初窥

  5. Rsync备份服务

    一.Rsync 原理图 二.Rsync 原理描述 2.1:什么是Rsync Rsync是备份的一款软件,它可以实现全量备份.增量备份,也可以在不改变内容.属性的情况下进行同步备份,端口默认是873 2 ...

  6. paddlepaddle使用(一)

    paddlepaddle是百度提出来的深度学习的框架,个人感觉其实和tensorflow差不多(语法上面),因为本人也是初学者,也不是很懂tensorflow,所以,这些都是个人观点. 百度的padd ...

  7. 四则运算2及psp0设计

    随机生成运算式,要求: 1.题目避免重复. 2.可定制(数量/打印方式). 3.可以控制一下参数. 要求:是否有乘除法,是否有括号,数值范围,加减有无负数,除法有无余数. 刚开始看到这样一个题目感觉还 ...

  8. Apache解析和绑定域名

    转载+修改 如果你想让你上线项目的域名解析的是你本地的IP,该怎么做呢?难道要一个个的改配置文件吗? 例 :域名为  aaa.com 端口默认为80. 我试图修改为8080端口,但是出错了 1.本地h ...

  9. Gen中的switch分析及lookupswitch与tableswitch指令

    int chooseNear(int i) { switch (i) { case 0: return 0; case 1: return 1; case 2: return 2; default: ...

  10. golang-nsq消息队列应用

    1. 安装nsq brew install nsq 2.启动nsq https://nsq.io/overview/quick_start.html 3.golang client var produ ...