几个 PHP 文件读写函数和 CSVFileObject 类
/**
* 打开关闭文件
*/
fopen() // 2/4: 2 个必选参数, 4 个参数;
fclose() // 1/1;
/**
* 读取文件
*/
// 需先用 fopen() 打开文件才能读取的函数;从文件指针处开始读取
fgetc() // 1/1; 读取一个字符
fgets() // 1/2; 读取一行
fgetss() // 1/3; 读取一行并去除 HMTL 标签
fgetcsv() // 1/5; 读取一行并解析为 csv 字段,返回数组
fread() // 2/2; 读取指定字节的字符
fscanf() // 2/n; 从文件中格式化输入
// 不需要先 fopen() 打开文件的函数
file() // 1/3; 读取整个文件内容到一个数组,文件中一行对应数组中一个元素
file_get_contents() // 1/5; 读取整个文件到一个字符串
readfile() // 1/3; 读入一个文件并写入到输出缓冲。
/**
* 写入文件
*/
fwrite() / fputs() // 2/3; 写入文件(可安全用于二进制文件), 需先 fopen()
fputcvs() // 2/4; 将行格式化为 CSV 并写入文件指针,需先 fopen()
file_put_contents() // 2/4; 将字符串整个写入文件
/**
* 文件指针
*/
ftell() // 1/1; 返回文件指针读/写的位置
fseek() // 2/3; 在文件指针中定位
rewind() // 1/1; 倒回文件指针的位置
/**
* 使用 SplFileObject 方法 fgetcsv() 时最后一行后面还会解析出一个数组
* eg:
* $it = new SplFileObject('sample.csv');
* while( $arr = $it->fgetcsv() ){
* print_r( $arr)
* }
*/
class CSVFileObjectException extends Exception{
//
}
class CSVFileObject extends SplFileInfo implements Iterator{
protected $current_line;
protected $map;
protected $column_cnt;
protected $fp;
function __construct( $filename, $mode, $use_include_path = FALSE, $context = NULL)
{
$this->ensure( ! is_readable( $filename), "CSV file {$filename} does not exists or is not readable");
if( is_null( $context)){
$this->fp = @fopen( $filename, $mode, $use_include_path);
}else{
$this->fp = @fopen( $filename, $mode, $use_include_path, $context);
}
$this->ensure( ! $this->fp, "open CSV file {$filename} failure");
parent::__construct( $filename);
$this->current_line = 0;
$
相关文档:
共3个文件
IncDB.php数据库连接
index.php首页
InsetToDB.php数据库操作
数据库lguestbook里面建表
CREATE TABLE `intd` (
`id` int(11) NOT NULL auto_increment,
`name` varchar(255) character set utf8 collate utf8_bin N ......
在PHP.net的牛人回复中找到一个自动根据图片文件类型打开图片的PHP函数,很方便.
/**
*
* Loads a file based on its filetype and returns false if it fails.
*/
function imagecreatefromfile($path, $user_functions = false)
{
$info = @getimagesize($path);
if(!$info)
{ ......
在PHP里得到前天和昨天的日期的代码前天去面试的时候也是这样,不过我当时记不起来了.就记得MYSQL里面的date_sub(now(),'interval 1 day');date('Y/m/d h:i:s',mktime(date('h'), date('i'), date('s'), date('m') , date('d')+1, date('Y'))); -------------------------------------------------------------------------- ......
返回一个结果全世界都知道怎么处理,关键是返回多个结果集就不好办了,下面有一解决办法
存储过程代码
DELIMITER $$;
DROP PROCEDURE IF EXISTS `test`.`sp_test`$$
CREATE PROCEDURE `test`.`sp_test` ()
BEGIN
select * from `user`.`user` limit 0, 50;
select coun ......
1,设计一个程序的流程
设计流程:
功能需要->页面设计->数据库设计->代码设计->调试发布.
开始程序->初始化->条件->结束;
2.heml表单标签的使用:
<form action = "" method = "get">
<input type="test" size=10 name="user"/>
<input type="test" size=10 name="title"& ......