PHP笔记one day

1、BS架构 b:browser 浏览器 s:sever 服务器 优点:只要有浏览器就可以访问,开发低,缺点:胖服务器-瘦客户端

2、CS架构:c:client 客户端 s:server 服务器 优点:可以开发客户端和服务器端,负载均衡,缺点:安装软件访问,成本高

3、虚拟目录配置:

Order 指定执行规则顺序 Order allow,deny 先拒绝再允许
Deny 指定拒绝访问列表 Deny from all 拒绝所有请求 Deny from 192.168.1
Allow 指定允许访问列表 Allow from all 允许所有请求 Allow from 192.168.1

Require all granted 表示所有请求都被授予了访问权限,即允许所有用户访问该虚拟目录

4、netstat -ano 查看计算机占用端口

5、php输出语句:echo:输出,print:输出,成功返回1,print_r():输出数组,var_dump():输出数据的详细信息,带有数据类型和数据长度

6、unset()销毁变量

7、常理 define(常量名,值,【是否区别大小写 true 不分,false分】)  

也可以用const name = 1 定义常量

8、预定义常理 PHP_VERSION //php版本号 PHP_OS //php操作系统 PHP_INT_MAX php中整形的最大值

9、魔术变量 __LINE__ //获取当前行号 __FILE__ 文件的路径和文件名 __DIR__ //文件所在目录

10、数据类型 整形,浮点型(浮点型不能直接比较)布尔型,字符串型(单引号是字符串,双引号需要解决字符串中的变量)$name = sanmu echo “{$name} is my name” 特殊字符串\’,定界符<<<EOT 哈哈哈哈哈 EOT;EOT自定义结束符。

11、数组分为索引数组和关联数组

索引数组:用整数做下标,默认从0开始,后面依次加一

关联数组:用字符串做下标,通过=>符号将下标和值关联起来

声明:array(1,2,3,4,5)或[1,2,3,4,5]

12、特殊类型:资源(外部资源引用,如数据库连接,文件操作),null

13、类型转换:强类型转换 (int )$null1, (float)$null ,(string)$null

14、isset()判断变量是否被设置,empty():检测变量是否为空(能转成false全部是空)

15、foreach(数组 as 键=>值){}  break  continue

16、。。。展开数组或获取所有参数

17、$GLOBALS (数组)保存全局变量所有值,使用$GLOBALS[‘num’] = 25,echo $GLOBALS[‘num’]

18、global 可以升级局部变量,$num = 10; function fun(){ global $num; echo $num;}

19、static 静态变量只初始化一次,调用完不销毁,第二次调用也不初始化

20、常量和静态变量都是初始化一次,常量不能改变值,静态变量可以改变值,常量没有作用域,静态变量有作用域

21、匿名函数use()可以将外部变量引入匿名函数中 $num=10  $fun =function use($num){echo $num;} $fun()

22、包含文件 require和include:包含多次,require_once和include_once:包含一次 require遇到错误抛出error类别错误,停止执行,include遇到错误抛出warning类型错误继续执行

23、错误相关配置 php.ini中 error_reporting = E_ALL 报告所有的错误 display_errors = On 将错误显示在浏览器上 log_errors = On 将错误记录在日志中 error_log=’地址’ 错误日志保存的地址 ini_set() 设置PHP的配置参数

24、文件夹操作 mkdir(‘./aa’)//创建aa目录 mkdir(‘./aa/bb/cc/dd’,0777,true) //递归创建

                     rmdir(‘./aa/bb’);//删除bb文件 没有递归删除

            rename(‘./aa’,’./aaa’);//将aa改为aaa

            is_dir(‘./aa’)?’是文件夹’:’不是文件夹

opendir(‘./’) 打开文件夹 readdir($folder)’ 读取文件夹  closedir($folder) 关闭文件夹

25、文件操作:file_put_contents(‘./test.text’,“嘻嘻嘻嘻嘻\r (回车)\n(换行)”);写入文件

读取文件内容:file_get_contents(‘./test.txt’);和readfile(‘./test.text’)

打开文件并操作: fopen(地址,模式) 模式 r读 w写 a追加 $fp = fopen(地址,’w’)   fputs($fp,内容)写一行 $fp=fopen(地址,’r’) fgets($fp)读一行 $fp = fopen(地址,‘a‘) fputs($fp,内容)追加 fclose()关闭文件

Is_file(地址)?是文件,不是文件    file_exists(地址)?文件存在,文件不存在

删除文件 unlink(地址)

二进制读取 fread(文件指针,文件大小) file_get_contents()也可以进行二进制读取

26、提交数据大小 post_max_size = 8m (php.ini,可以配置post提交的大小)

27、服务器接收数据的三种方式 :$_POST  $_GET  $REQUEST 

28、参数传递复选框 <input type=”checkbox name= “hobby[]” value = ‘爬山‘>爬山</input>

29、文件上传 客户端文件上传 <input type=”file” name=’image’>

重点 enctype属性的值有:1. application/x-www-form-urlencoded:【默认】,表示传递的是带格式的文本数据。2. multipart/form-data:复合的表单数据(字符串,文件),文件上传必须设置此值3. text/plain:用于向服务器传递无格式的文本数据,主要用户电子邮件

30.服务器接收文件 超全局变量$_FILES是一个二维数组 $_FILES[][‘name’]上传文件名

$_FILES[][‘type’] 上传类型 $_FILES[][‘size’]文件大小 $_FILES[][‘tmp_name’] 文件临时文件 $_FILES[][‘errror’] 错误编码(值有0、1(文件超出大小)、2(文件超出表单)、3(只能部分文件上传)、4(没有文件上传)、6(找不到临时文件)、7(文件写入失败)) 0表示正确

31、将上传文件移动到指定位置 move_uploaded_file(临时地址,目标地址)

32、文件上传相关配置 post_max_size = 8M;表单允许的最大值 upload_max_filesize = 2M;允许上传的文件大小 upload_tmp_dir=f:\wamp\tmp;指定临时文件地址 file_uploads=On;是否允许文件上传;max_file_uploads=20;允许同时上传20个文件

优化文件上传 :

  1. 更改文件名:通过时间戳做文件名 time().rand(100,999).strrchr($path,’.’)

通过uniqid()实现:uniqid(前缀,是否要随机树true false).strrchr($path,’.’)

(2)验证文件格式:判断文件的扩展名

if(!empty($_POST)){

$allow = array(‘.jpg’,’.png’,’.gif’);

$ext = strrchr($_FILES[‘face’][‘name’],’.’);

If(in_array($ext,allow)){ echo ‘允许上传’; else echo “文件不合法”;}

通过$_FILES[][‘type’]类型判断

$allow=array(‘image/jpeg’,’image/png’,’image/gif’);

$mine = $FILES[‘face’][‘’type];

If(in_array($mime,$allow))echo ‘允许上传’ else echo ’文件不合法’

php_fileinfo扩展 extension = php_fileinfo.dll

33、Cookie原理

设置cookie setcookie(‘name’,’tom’); 

获取cookie的值 $_COOKIE[‘name’]

Cookie过期时间设置 $thim = time()+3600  setcoookie(‘name’,’tom’,$time)  

有效目录设置setcookie(‘name’,’tom’,0,’/’) 

子域名cookie共享 setcookie(‘name’,’tom’,0,’/’,’baidu.com’)

是否安全传输 setcookie(‘name’,’tom’,0,’/’,’’,true); // true表示只能是https传输

是否安全访问 setcookie(‘name’,’tom’,0,’/’,’’,false,true); // true php可以访问 js不可以

删除cookie setcookie(‘name’,) 缺点 安全性低 只能保存字符串和数字,空间有限4k ,数据负载

34、session原理 默认情况下不开启

session_start() 开启会话

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值