2019独角兽企业重金招聘Python工程师标准>>>
PHP中Session的使用:
1. session_start():
初始化session,如果页面要使用session,必须先使用这句话,否则会报错。
告诉服务器使用session。一般来说,php是不会主动使用session的。
不过可以设置php.ini中的session.auto_start=1来自动对每个请求使用。
而用了session_start(),或者自动开启session,
服务器会根据请求头部传来的cookie中或url中的PHPSESSID来确认此sessionid对应的$_SESSION数组。
2. session_register("sessionName"):注册一个名字叫sessionName的session
3. $_SESSION["sessionName "].=”asdfasdf”:给已经注册了的session添加值
4. session_unregister("sessionName "); //注销session
PHP文件上传步骤:
1. 使用form表单上传文件,注意enctype的属性值必须是:multipart/form-date,意思是使用二进制的形式传递表单中的数据
2. 跳转之后使用:$_FILES["uploadFile"]接收到上传的文件
3. 保存需要的数据完成上传
Move_uploaded_file($uploadFile["tmp_name"], "./uploadFile/".$name)):
保存的路径必须以“.”开头,表示当前目录
Move_uploaded_file会事先检测是否是合法的上传的文件,否则不移动,只能移动从浏览器上传的文件
Copy将文件拷贝到目的地
上传文件时中文文件名乱码: 一般状况下上传以中文为文件名的文件会出现乱码: 寮€鍚疢ySql杩滅▼鐧婚檰.txt
只需要使用iconv(fromEncoding,toEncoding,filename)方法就可以
$filename=iconv("utf-8","gbk",$filename); //从utf-8转gbk
同样的,在文件下载的时候也会出现乱码问题,同样使用这个方法解决。
文件下载:
$sql=mysql_query("select * from tb_soft where id='".$id."'",$conn);
$info=mysql_fetch_array($sql);
$path=$info[address];
$filename=basename($path);
$file=fopen($path,"r");
header("Content-type:application/octet-stream");
header("Accept-ranges:bytes");
header("Accept-length:".filesize($path));
// Content-Disposition 报头用于提供一个推荐的文件名,并强制浏览器显示保存对话框
header("Content-Disposition:attachment;filename=".$filename);
echo fread($file,filesize($path));
fclose($file);
exit;
PHP时间与系统时间不匹配:
方法一:
打开php.ini文件,一般在PHP的安装根目录下
找到其中的;date.timezone
删掉date.timezone前面的分号,并改成date.timezone = PRC
存盘,并重新启动Apahce服务。
方法二:
在程序前面加上date_default_timezone_set(PRC);
例如:
<?php
date_default_timezone_set(PRC);
echo date("Y-m-d H:i:s");
?>