PHP快速开发网页和后台数据的热门语言,核心是LAMP:L指Linux,A指Apache,M指MySQL,P就是Php 。建议使用phpstorm工具开发Php,建议使用PHPstudy工具集成Apache和MySQL。格式:<?php ?> 参考手册:http://www.w3school.com.cn/php/php_variables.asp
一 基本数据类型8种
四种标量类型:boolean (布尔型逻辑型)、int (整型)、float (浮点型, 也称作double)、 string (字符串)
两种复合类型:array (数组)、object (对象)
两种特殊类型:resource (资源)、 null (NULL)
二 运算符7种
算数运算符:+、-、*、/、%、++、-- 加减乘除余数加加减减
字符串运算符: .
赋值运算符:+=、-=、*=、/=、%=、.=
比较运算符:> 、>= 、< 、<= 、== 等于、!= 不等于、<> 不等于、=== 值或类型全等于、!== 值或类型不等于
逻辑运算符:and 与、or 或、xor 异或、&& 与、|| 或、! 非、1>0?'true':'false' 三元运算
执行运算符:``、shell_exec()
错误抑制符:@
三 流程控制
关键字:break、continue、exit/die、goto
if (条件) {
true 时执行的代码;
} elseif (条件) {
true 时执行的代码;
} else {
false 时执行的代码;
}
switch (expression)
{
case label1:
if expression = label1执行
break;
default:
没有符合条件后执行
}
for ($x=0; $x<=10; $x++) {
echo "打印的数字是:$x <br>";
}
while (条件为真) {
var_dump('打印执行的详细代码');
}
四 变量和函数
1.变量:$ 符号开头,其后是变量的名称,对大小写敏感!(全局变量global $ 、 &$)
2.常量:请用define(name,value,nocase) 函数-它的三个参数:(类常量const)
name名称必选,value值必选,nocase可选-是否对大小写不敏感 默认是false敏感!
魔术常量:__LINE__ __FILE__ __DIR__ __FUNCTION__ __CLASS__ __METHOD__
3.许多预定义变量都是“超全局变量”,函数或方法中无需执行global $variable; 就可访问它们:
$GLOBALS ———管理全部变量的数组,变量名就是它的键名
$_SERVER———$_SERVER['REMOTE_ADDR']客户端IP地址 $_SERVER['REQUEST_METHOD']get/post方法
$_REQUEST——可以处理_POST/_GET/_COOKIE,不安全
$_POST ————返回数组print_r($_POST['name']),post最安全
$_GET ————返回数组, 乱码处理:发送时urlencode()接收时urldecode()
$_FILES ————返回数组为上传文件的名称类型大小等信息
$_ENV ————建议不开启
$_COOKIE ———敏感信息要加密
$_SESSION———禁止cookie后仍可用session
4.函数:函数名以字母或下划线开头(而非数字)。函数名对大小写不敏感!
function myName() {
被执行的函数代码;//默认return null;
}
5.自定义函数:
递归函数-函数不能成为死循环
变量函数-md5(123);$a='md5';echo $a(123);
回调函数-传入的参数就是函数名:call_user_func(函数名);call_user_func_array(函数名,参数组);
匿名函数-没有直接的名称:$a=function(){};
可变参数函数-没有参数要自己判断:func_num_args();func_get_args();func_get_arg(index);
五 数组
表达式:$arr=array(); //数组打印 print_r($arr);
静态索引数组:$arr=array(1,false,'小明'); //$arr=range(low,high,step);
静态关联数组:$arr=array('name'=>'小明','age'=>8); //$a='ok';$arr=compact('a');
动态数组创建:$arr=array();$arr[]=1;$arr[]=true;$arr['name']='Lily';
二维数组创建:$arr=array();$a1=array();$a1[]=123;$arr[]=$a1;
增删改查:增改查$arr[index]; 删除unset($arr[index]);
数组遍历:foreach、list、each
foreach ($arr as $key=>$val) {
print_r('键:'.$key.'值:'.$val.'<p>');
}