php类

PHP文件操作类

对着背影说爱祢 提交于 2020-03-01 17:40:31
gistfile1.txt <?php /** * 操纵文件类 * * 例子: * FileUtil::createDir('a/1/2/3'); 测试建立文件夹 建一个a/1/2/3文件夹 * FileUtil::createFile('b/1/2/3'); 测试建立文件 在b/1/2/文件夹下面建一个3文件 * FileUtil::createFile('b/1/2/3.exe'); 测试建立文件 在b/1/2/文件夹下面建一个3.exe文件 * FileUtil::copyDir('b','d/e'); 测试复制文件夹 建立一个d/e文件夹,把b文件夹下的内容复制进去 * FileUtil::copyFile('b/1/2/3.exe','b/b/3.exe'); 测试复制文件 建立一个b/b文件夹,并把b/1/2文件夹中的3.exe文件复制进去 * FileUtil::moveDir('a/','b/c'); 测试移动文件夹 建立一个b/c文件夹,并把a文件夹下的内容移动进去,并删除a文件夹 * FileUtil::moveFile('b/1/2/3.exe','b/d/3.exe'); 测试移动文件 建立一个b/d文件夹,并把b/1/2中的3.exe移动进去 * FileUtil::unlinkFile('b/d/3.exe'); 测试删除文件 删除b/d/3.exe文件

php 文件操作类

自古美人都是妖i 提交于 2020-03-01 17:40:21
1 class fileInit { 2 3 /** 4 * 创建空文件 5 * @param string $filename 需要创建的文件 6 * @return 7 */ 8 public function create_file($filename) { 9 if (file_exists($filename)) return false; 10 $this->create_dir(dirname($filename)); //创建目录 11 return @file_put_contents($filename,''); 12 } 13 14 /** 15 * 写文件 16 * @param string $filename 文件名称 17 * @param string $content 写入文件的内容 18 * @param string $type 类型,1=清空文件内容,写入新内容,2=再内容后街上新内容 19 * @return 20 */ 21 public function write_file($filename, $content, $type = 1) { 22 if ($type == 1) { 23 if (file_exists($filename)) $this->del_file($filename); //删除文件 24 $this-

PHP文件操作类

不羁的心 提交于 2020-03-01 17:39:49
<?php //文件管理类 class myfile { public function __construct() { return true; } //建立文件夹 public function mkDir($path) { $path = str_replace("\\","/",$path); $aimDir = ""; //分隔文件路径 $array = explode("/",$path); foreach($array as $v) { if($v != "") { $aimDir .= $v."/"; if(!$this->isExists($aimDir)) { mkdir($aimDir); } } } } //建立某个文件夹下面的某个文件,后面一个参数代表是否覆盖之前的文件 public function touchFile($path, $overWrite = false) { //如果文件存在,并不覆盖之前的文件 if($this->isExists($path) && $overWrite == false) { return false; } //文件存在,并覆盖操作 $dir = dirname($path); //判断目录是否存在,不存在创建目录 if(!$this->isExists($dir)) { $this->mkDir($dir); }

php-SPL库迭代器类

本小妞迷上赌 提交于 2020-03-01 03:02:33
SPL提供了多个迭代器类,分别提供了迭代访问、过滤数据、缓存结果、控制分页等功能。,因为php总是在不断壮大,我尽可能列出SPL中所有的迭代类。下面其中一些迭代器类是需要php5.4,另外一些如SearhIteratoer类在最新的php版本中已经去除 1.ArrayIteratoer 从PHP数组创建一个迭代器,当其和IteratorAggregate类一起使用时,免去了直接实现Iterator接口的方法的工作。 <示例> $b = array( 'name'=> 'mengzhi', 'age' => '12', 'city'=> 'shanghai' ); $a = new ArrayIterator($b); $a->append(array( 'home' => 'china', 'work' => 'developer' )); $c = $a->getArrayCopy(); print_r($a); print_r($c); /**output ArrayIterator Object ( [storage:ArrayIterator:private] => Array ( [name] => mengzhi [age] => 12 [city] => shanghai [0] => Array ( [home] => china [work] =>

(实用篇)PHP ftp上传文件操作类

夙愿已清 提交于 2020-02-27 05:44:47
<?php /** * 作用:FTP操作类( 拷贝、移动、删除文件/创建目录 ) */ class class_ftp { public $off; // 返回操作状态(成功/失败) public $conn_id; // FTP连接 const FTP_HOST='*.*.*.*'; const FTP_PORT='21'; const FTP_USER='*******'; const FTP_PASS='*******'; /** * 方法:FTP连接 * @FTP_HOST -- FTP主机 * @FTP_PORT -- 端口 * @FTP_USER -- 用户名 * @FTP_PASS -- 密码 */ function __construct() { $this->conn_id = @ftp_connect(self::FTP_HOST,self::FTP_PORT) or die("FTP服务器连接失败"); @ftp_login($this->conn_id,self::FTP_USER,self::FTP_PASS) or die("FTP服务器登陆失败"); @ftp_pasv($this->conn_id,1); // 打开被动模拟 } /** * 方法:上传文件 * @path -- 本地路径 * @newpath -- 上传路径 * @type --

PHP 类与对象 全解析(三)

我怕爱的太早我们不能终老 提交于 2020-02-24 01:56:18
目录 PHP 类与对象 全解析( 一) PHP 类与对象 全解析( 二) PHP 类与对象 全解析(三 ) 13.魔术方法 定义:PHP把所有以__(两个下划线)开头的类方法当成魔术方法 __construct, __destruct (参看 构造方法和析构方法), __call, __callStatic, __get, __set, __isset, __unset (参看 重载), __sleep, __wakeup, __toString, __set_state 和 __clone 等方法在PHP中被称为“魔术方法”(Magic methods)。 你在命名自己的类方法时不能使用这些方法名。 serialize() 作用: 第一. 在序列化之前,关闭对象可能具有的任何数据库连接等. 第二. 指定对象中需要被序列化的成员属性,如果某个属性比较大而不需要储存下来,可以不把它写进__sleep要返回的数组中,这样该属性就不会被序列化 在用serialize序列化对象时,会自动调用__sleep方法,__sleep方法必须返回一个数组,包含需要串行化的属性。 PHP会抛弃其它属性的值, 如果没有__sleep方法,PHP将保存所有属性,包括private属性。 unserialize() 从字节流中创建了一个对象之后,马上检查是否具有__wakeup 的函数的存在。 如果存在,_

php采集远程文章简单类

ε祈祈猫儿з 提交于 2020-02-22 16:22:08
<?php /** * 采集类 * @author Milkcy QQ:9877633 * @copyright (C) 2012-2015 TCCMS.COM * @lastmodify 2012-07-10 14:00 */ class gather { public $pagestring = ''; private $db; function __construct() { global $db; $this->db = $db; } function geturlfile($url) { $url = trim($url); $content = ''; if (extension_loaded('curl')) { $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($ch, CURLOPT_HEADER, 0); $content = curl_exec($ch); curl_close($ch); } else { $content = file_get_contents($url); } return

PHP编写的图片验证码类文件分享方法

泪湿孤枕 提交于 2020-02-20 08:02:00
适用于自定义的验证码类! <?php /* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ Class Image{ private $img; public $width = 85; public $height = 25; public $code; public $code_len = 4; public $code_str = "329832983DSDSKDSLKQWEWQ2lkfDSFSDjfdsfdsjwlkfj93290KFDSKJFDSOIDSLK"; public $bg_color = '#DCDCDC'; public $font_size = 16; public $font = 'font.ttf'; public $font_color = '#000000'; //创建验证码饿字符创 public function create_code(){ $code = ''; for( $i=0;$i<$this->code_len;$i++ ){

php图片验证码类

不打扰是莪最后的温柔 提交于 2020-02-20 07:43:22
<?php /** * 图片验证码类 * 生成图片类型验证码,验证码包含数字和大写字母,session中存放md5加密后的验证码 * * 使用方法: * $captcha = new Catpcha(); * $captcha->buildAndExportImage(); * * 作 者: luojing * 创建时间: 2013-3-27 上午11:42:12 */ class Captcha { private $width;//宽度 private $height; //高度 private $codeNum;//验证码字符数量 private $image;//验证码图像资源 private $sessionKey;//session中保存的名字 private $captcha;//验证码字符串 const charWidth = 10;//单个字符宽度,根据输出字符大小而变 /** * 创建验证码类,初始化相关参数 * @param $width 图片宽度 * @param $height 图片高度 * @param $codeNum 验证码字符数量 * @param $sessionKey session中保存的名字 */ function __construct($width = 50, $height = 20, $codeNum = 4,

php 分页类(2)

寵の児 提交于 2020-02-16 03:29:32
<?php include("connection.php"); $perNumber=10; //每页显示的记录数 $page=$_GET['page']; //获得当前的页面值 $count=mysql_query("select count(*) from user"); //获得记录总数 $rs=mysql_fetch_array($count); $totalNumber=$rs[0]; $totalPage=ceil($totalNumber/$perNumber); //计算出总页数 if (!isset($page)) { $page=1; } //如果没有值,则赋值1 $startCount=($page-1)*$perNumber; //分页开始,根据此方法计算出开始的记录 $result=mysql_query("select * from user limit $startCount,$perNumber"); //根据前面的计算出开始的记录和记录数 while ($row=mysql_fetch_array($result)) { echo "user_id:".$row[0]."<br>"; echo "username:".$row[1]."<br>"; //显示数据库的内容 } if ($page != 1) { //页数不等于1 ?> <a