最近这段自己学了些PHP, 继续记录笔记, 方便以后查看, 之前的JS和Swift这两天找时间整理完善下. PHP就不像之前那么墨迹了, 上干货.
PHP是一门和服务器进行交互的语言, 面向对象, 其他特点懒得说, 总结一句话, 现在很火, 也很实用, 学会了也没错.
在PHP中是没有明确的类型修饰符的, 所以声明的变量也不像其他语言要给一个类型, 甚至只是一个var, 在PHP中, 变量用$作为标识代表, 其余的特性和JS很像, 没有类型, 类型是可以变化的, 都是合法的.
$string = "JianweiWang"; //声明一个变量
$string = 5; //修改$string的值为5, 合法
echo $string; //5, 打印结果为5
变量名的命名规则, 和其他的语言也挺像的, 在$标识开头的基础上, 字母下划线开头, 组成也只能有数字字母下划线(正则中为/\w/), 变量名中不允许包含空格, 区分大小写.($_name, $name, $name1, 这些都是合法的).
再来说说PHP中的空类型, null, NULL, 使用unset销毁的变量, 最后的类型都会统一为NULL.
常量在一个程序的健壮性上起了非常大的作用, 不会因为项目的转手造成变量名不清而出现的变量重新赋值等不安全的因素.
PHP并不像其他语言中, 常量有专门的修饰词, 或者在js中用闭包声明一个常量, 而是有专门的函数方法来定义常量.
define("PI", 3.14, true);
三个参数, 第一个参数是常量名, 要求一个字符串类型, 第二个为常量的value(值), 第三个参数为是否对大小写敏感, 如果设置为true, 即不敏感, 默认都是false, 一般没人那么无聊不敏感吧- -.
所以上面声明就是一个值为3.14的常量, 它是不允许被人修改的, 当然名字也不能有$标识, 而且设置了true, 所以这个常量可以用PI访问, 也可以是pI.
有的时候, 为了防止常量被重新定义, 我们需要测试下这个常量是否存在, 所以要用另一个方法. defined(), 参数为常量名字符串, 返回值是bool类型, 不多说了...
数组是数据集合的一种形式, 还是正常的老规矩, 简单的介绍下, 有待以后增加方法的说明, 在PHP中定义一个数组一般有两种方式, 一种是使用array构造器, 一种是字面量的形式.
array构造器
$array = array(1, 2, 3, 4, 5);
字面量形式
$array = [1, 2, 3, 4, 5];
在PHP的数组中一切更加明朗(貌似没有字典, 因为可以使用关联数组), 它将key和value的关系相比JS更加的明显, 索引是可以修改的, 而不是只能是传统的0, 1, 2, 3. 这也就是关联数组.
关联数组的初始化
还是两种方式, 构造器, 字面量.
类型构造器
$fruit = array(
'apple' => "苹果",
'banana' => "香蕉",
'pineapple' => "菠萝"
);
字面量
$fruit = [
'apple' => "苹果",
'banana' => "香蕉",
'pineapple' => "菠萝"
];
这个是不是长得很像字典了就, 这里的访问和JS一样的, 通过key值进行访问.
print_r($fruit['apple']); //这里就能得到苹果.
遍历一个数组一般使用foreach方法, 这里简单介绍下, 大家自己多写写.
foreach($fruit as $key => $value){
echo $key.$value.'
';
}
这样会打印出
apple苹果
banana香蕉
pineapple菠萝
函数, 是将一块能够复用的代码封装起来, 在以后的使用中能够反复调用, 提高了代码的可读性, 这个和其他的语言也是一样的, 也不赘述了, 主要讲点不同的, 比如参数表之类的.
function func(){};
在PHP中, 这也是一个函数的基本结构, 不过它不同于JS的一些使用, 比如说是隐式的触发等等, 不过通过函数名字符串赋值给变量名, 然后通过变量名触发函数, 这些和底层的实现还是很类似的.
function method(){
echo "wang";
}
$func = "method"; //将method()方法给予变量$func
mechod(); //调用method()方法
$func(); //调用$func, 也是调用method(), 这种方式称之为可变函数
PHP有大量的内置函数, 就不细讲了.