PHP基础
1、注释
单行注释:
header("Content-type: text/html; charset=utf-8");
# 注释内容
//
多行注释:
/*
注释内容
*/
2、PHP常量
define(常量名,常量值)
例如:
define('MY_NAME','PHP中文网');
3、数据类型
boolean 布尔型
integer 整型
float 浮点型
string 字符串型
array 数组
object 对象
整形
八进制 以0开始
十六进制0x开始
字符串
1、单引号 不解析变量 常用
2、双引号 解析变量 如转义字符
3、字符界
$dingjie = <<<ABC
字符串段落
字符串段落二
ABC;
浮点型
$f1 = 0.8887;
var_dump($f1);
输出:float(0.8873)
$f1 = 0.8873;
echo $f1;
4、查看和判断数据类型
gettype()
var_dump()
is_int
is_bool
is_float …
$fo = true;
if(is_bool($fo)){
echo '执行真区间';
}
else{
echo '执行假区间';
}
判断类型相等用 ===
5、运算
逻辑运算
and &&
or ||
xor 异或运算
三元运算符
$x? 真情况 :假情况;
-> 对象访问
=> 数组下标访问
6、流程控制
if(条件){
语句1;
}
else{
语句2;
}
rand(0,1) 随机数
switch($x){
case 1: ;
break;
case 2: ;
break;
default: ;
}
for($i=1; $i<=10;$i++0){
}
goto循环语句
goto wan;
echo '天王盖地虎';
wan:
echo '小鸡炖蘑菇';
for($i=1;$i<=10;$i++){
echo '第'.$i.'周'<br />;
if($i==6){
goto end;
}
}
7、函数
function 函数名(参数名[=值],参数名[=值]){
功能体
[return 返回值]
}
例如:
function fun1(){
echo '好好学习';
}
fun1();
包含函数:include‘文件名’; 放在同级目录中,在一个文件中调用另一个文件
8、数组与数据结构
$shu = array(1,1.5,true,'zifuchuan');
echo '<pre>';
var_dump($shu);
echo '</pre>';
$shu = array('abcd',10=>'nonva',10);
查找字符串中元素:
$zz = '/wq/'; #若想写'/',需要用'///'代替
$string = 'ssswqsss';
if(preg_match($zz,$string,$matches)){
echo '匹配到了';
var_dump($matches);
}
else{
echo '未匹配到';
}
9、文件
文件操作
readfile("C:\\boot.txt"); #读取文件
$filename = 'abc.txt';
$filestring = file_get_contents($filename);#打开文件
echo $filestring;
$filename = file_put_contents('hzl.txt,'abcd'); #写入
echo file_get_contents('hzl.txt');
<?php
$filename = 'text.txt';
$fp = fopen($filename,"w");
$len = fwrite($fp,'我是一只狼');
fclose($fp);
print $len
?>
创建临时文件
$handle = tmpfile();
rename(old,newname); #重命名
copy(old,newname); #复制文件
unlink('文件名'); #删除文件
file_exists('filename') #检测文件是否存在
is_executable(); #是否可执行
目录处理
<?php
$dir = 'd:/';
if(is_dir($dir)){
if($dh=opendir($dir)){
while(($filename=readdir($dh))!==false){
echo "文件名是:$filename,文件类型为:".filetype($dir.$filename).'<br>';
}
closedir($dir);
}
}
?>
注意:readdir的调用对象必须是打开之后的目录,返回文件名
文件路径
$path_parts = pathinfo('路径');
echo '文件目录名:'.$path_parts['dirname'].'<br>';
echo '文件全名:'.$path_parts['basename'].'<br>';
echo '扩展名:'.$path_parts['extension'].'<br>';
echo '不包含扩展的文件名'.$patn_parts['filename'].'<br>';
文件留言本
10、文件上传
步骤:
1、系统返回错误码
2、自定义判断是否超出文件大小范围
3、判断后缀名和mime类型是否符合
4、生成文件名 date()、mt_rand()或者unique()
5、判断是否是上传文件 is_upload_file()
6、移动临时文件到指定位置 move_upload_file()
11、上传错误处理
上传文件例子:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>上传文件</title>
</head>
<body>
<h1>上传文件</h1>
<form action="abc.php" method="post" enctype="multipart/form-data">
请选择文件:<input type="file" name="file" /><input type="submit" value="上传" />
</form>
</body>
</html>
<?php
$arr = $_FILES["file"];
if(($arr["type"] == "image/jepg" || $arr["type"] == "image/png") && $arr["size"] < 1024000){
$arr["tmp_name"];
$filename = "./images/".date('YmdHis').$arr["name"];
if(file_exists($filename)){
echo "该文件已存在";
}
else{
$filename = iconv("UTF-8","gb2312",$filename);
move_uploaded_file($arr["tmp_name"],$filename);
echo "文件上传成功";
}
}
else{
echo "上传的文件大小或类型不符";
}
?>
12、正则表达式
<?php
$zz = '/wq/';
$string = 'sssswqaaaaa';
if(preg_math($zz,$sting,$matches)){
echo '匹配到了,结果为:';
vad_dump($matches);
}
else{
echo '没有匹配到';
}
?>