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 ...
随机推荐
- 杭电OJ之2020-2029(C语言版)
2020. 绝对值排序 题目 Problem Description 输入n(n<=100)个整数,按照绝对值从大到小排序后输出.题目保证对于每一个测试实例,所有的数的绝对值都不相等. Inpu ...
- 【xsy1018】 小A的字母游戏 扩展CRT
题目大意:有$n$个无限长的循环字符串,所谓循环字符串,就是由某一个子串重复叠加而成.现在想知道最早在哪一位,这n个字符串的那一位的字母相同. 数据范围:$n≤30000$,答案$<2^{63} ...
- Window Navigator对象
Window Navigator对象 txt = "<p>浏览器代号: " + navigator.appCodeName + "</p>&quo ...
- 3. C++ POD类型
POD全称Plain Old Data,通常用于说明1个类型的属性.通俗的讲,一个类或结构体通过二进制拷贝后还能保持其数据不变,那么它就是一个POD类型. C++11将POD划分为2个基本概念的合集, ...
- C++的开源跨平台日志库glog学习研究(三)--杂项
在前面对glog分别做了两次学习,请看C++的开源跨平台日志库glog学习研究(一).C++的开源跨平台日志库glog学习研究(二)--宏的使用,这篇再做个扫尾工作,算是基本完成了. 编译期断言 动态 ...
- [转]RESTful API 设计指南
转自:http://www.ruanyifeng.com/blog/2014/05/restful_api.html 网络应用程序,分为前端和后端两个部分.当前的发展趋势,就是前端设备层出不穷(手机. ...
- Android PdfViewer
今天按项目要求找了一个android的PDF控件,各种操作效果都非常好,在这里和大家分享一下. 这是github的地址:https://github.com/barteksc/AndroidPdfVi ...
- 白月黑羽Python在线教程
推荐白月黑羽Python在线教程 白月黑羽 站在初学者的角度为大家安排了Python学习教程,帮助大家迅速掌握程序开发技能. http://www.python3.vip/doc/tutorial/p ...
- tomcat启动(一)startup.bat|catalina.bat分析
环境:windows X64位 Tomcat8.0.47 bootstrap.jar是tomcat的内核 开始位置 startup.bat 查看文本 具体的批处理脚本语法可以查看我整理的文章 http ...
- docker 安装集群管理工具 docker-compose
compose将管理的容器分为3层, 工程, 服务, 容器. 一个工程中可包含多个服务, 每个服务中定义容器运行的镜像参数, 依赖, 一个服务中科包含多个容器实力, 并没有解决负载均衡的问题 dock ...