php之番外

来源:互联网 发布:用淘宝助理复制宝贝 编辑:程序博客网 时间:2024/04/27 18:04

1 文件管理
1.1 文件属性函数 如file_exists()  filesize() stat()...
1.2 文件路径截取 如basename() dirname()
1.3 目录操作 opendir() readdir() closedir() rewinddir() mkdir()
1.4 文件操作 类似c的文件操作  fwrite...
2 文件上传与下载
2.1.1 form表单
action指定php文件  enctype需要指定为multipart/form-data才能上传文件
<form action="upload_file.php" method="post"  enctype="multipart/form-data">
   <label for="file">Filename:</label>
   <input type="file" name="file" id="file" />
   <br />
   <input type="submit" name="submit" value="Submit" />
</form>
2.1.2 上传脚本
主要通过全局数组$_FILES得到上传的参数
$_FILES["file"]["name"] - 被上传文件的名称
$_FILES["file"]["type"] - 被上传文件的类型
$_FILES["file"]["size"] - 被上传文件的大小,以字节计
$_FILES["file"]["tmp_name"] - 存储在服务器的文件的临时副本的名称
$_FILES["file"]["error"] - 由文件上传导致的错误代码
$_FILES["file"]["tmp_name"] - 临时文件
move_uploaded_file ( string $filename , string $destination) 移动临时文件
2.2 下载
下载普通文件 可以直接用<a>
下载html文件或者想隐藏路径 可以用php实现 需要加头部
Header("Content-type: application/octet-stream");
Header("Accept-Ranges: bytes");
Header("Accept-Length:".$file_size);
Header("Content-Disposition: attachment; filename=".$file_name);
3 mysql
3.1 链接
$link=  mysql_connect('localhost', 'name', 'pwd');
if(!$link){
die('connect err:'.mysql_error());}
mysql_select_db('database',$link) or die('select err'.mysql_error());
3.2 增删改查
$res=mysql_query($query[, $link])   不过在5.4中过时了
3.3 结果集处理
$row = mysql_fetch_row($res)    //取得一行结果 并作为索引数组返回 $row[0]
$row = mysql_fetch_assoc($res)    //同上 但是返回的是关联数组 $row['id']
$row = mysql_fetch_array($res)    //同上 可以传递参数 控制返回数组的形态 但是有地方说效率不高 不推荐用
$row = mysql_fetch_object($res) //返回一个对象 $row->id
用完需要mysql_free_result
3.4 关闭链接
mysql_close($link);
4 会话控制
4.1 cookie
设置  setcookie($name, $value, $expire, $path, $domain, $secure, $httponly)  //保存在客户端
获取  $_COOKIE[$name]得到$value
删除  setcookie($name,"", time()-1);
4.2 session
session_start();  //启动 在使用之前 必须启动
$_SESSION['name']="name";    //会保存在服务器端
unset($_SESSION['name']);    //删除在Session中name的值
$_SESSION=array()        //清除所有数据
session_destroy()        //彻底销毁session
5 php扩展c  <参见php核心技术与最佳实践> 第七章php扩展
6 memcache  缓存对于频繁变动的内容效果不好
缓存机制 使用多路复用IO模型 使用LRU算法
需要同时下载客户端和服务器端 在php.ini中配置即可使用
7 nginx varnish用到再看吧
<php核心技术与最佳实践>蛮不错的


0 0