《PHP求职宝典》--PHP语言基础笔记3

遍历文件夹下的所有文件和子文件夹: 

<?php

function my_dir($dir){

    $files =array();

    if($hand = opendir($dir)){

        while(($file = readdir($hand)) != false){

            if($file != ".." && $file != '.'){

                if(is_dir($dir ."/" .$file)){

                    $files[$file] = my_dir($dir ."/" .$file);

                }else{

                    $files[] = $file;

                }

            }

        }



        closedir($hand);



        return $files;



    }

}



?>

 

获取一个指定网页中的内容:

  file_get_contents($path);

 

网站图片打水印:

  

 1 /*

 2  imagefttext:向图像中编写文字

 3  imagecreatefromjpeg:引入一张图像

 4  */

 5 

 6 <?php

 7     header("Content-Type:image/jpeg");

 8     $image = imagecreatefromjpeg("abc.jpeg");

 9     $imagecolor = imagecolorallocate($image,250,40,50);

10 

11     $text = "水印文字";

12 

13     $font = "STCAIYUN.TTF";

14 

15     imagefttext($image,20,5,50,100,$imagecolor,$font,$text);

16 

17     imagejpeg($image);

18 ?>

 

更改Session存储目录:

  

 1 <?php

 2     header("Content-Type:text/heml;charset=utf-8");

 3 

 4     if(!is_dir("sessioon"))

 5         mkdir("session");

 6 

 7     $stringdir = realpath("session");

 8 

 9     session_save_path($stringdir);

10 

11     session_start();

12 ?>

 

网站需要上传超大文件对php.ini做的更改:

 1 file_uploads = ON //服务器支持文件上传

 2 

 3 upload_tmp_dir      //上传文件临时目录

 4 

 5 upload_max_filesize    //服务器允许上传文件的最大值

 6 

 7 max_execution_time    //一个指令所能执行的最大时间,单位是s

 8 

 9 memory_limit        //一个指令所分配的内容控件,单位是M

10 

11 /*

12      在客户端对文件上传控制:

13  */

14 

15 enctype = "multipart/form-data"    // 指定表单编码数据方式

16 method = "post"        //指定数据的传输方式

17 <input type="hidden" name="MAX_FILE_SIZE" value="1000" />

18 //该值不能超过php.ini配置文件中upload_max_filesize选项设置的值

 

解决网站中输出的系统当前时间与本地的当前时间不符问题:

  PHP默认采用的是标准的格林尼治时间(零时区).

  1. 在php.ini中设置data.timezone = PRC、Asia/Hong_Kong、Asia/Shanghai或者Asia/Urumqi等。

  这些都是东八区时间。

  2. 在应用程序中,在日期、时间函数之前使用date_default_timezone_set()函数设置完成市区的设置

 

php.ini中display_error:

  控制脚本执行期间出现的错误/警告信息是否显示给用户。

 

 

将所有的错误信息保存到日志文件中:

  设置display_errors = Off

  设置log_errors = ON

  根据需要更改文件大小log_errors_max_len = 1024

  设置error_log = <filename> 日志文件的位置和文件名称

  通过error_log()函数将信息保存到指定的文件中

 

php5中的魔术方法:

__sleep:在serialize()序列化对象之前调用这个函数
__wakeUP:在unserialize()解序列化之前调用这个函数
__toString:当将对象转化为字符串的时候调用这个函数
__construct:构造函数,当实例化一个对象的时候调用
__destruct:析构函数,当对象实例被释放的时候调用
__call:当调用类中没有的方法时调用此函数
__get:当访问一个类中没有的属性时调用
__set:当设置一个类中没有的属性的值时调用
__isset:当调用外部的isset函数检查类是否有某个属性时调用
__unset:当删除类的某个属性时调用
__set_state:当使用var_export导出对象的属性和值时调用
__clone:当复制某个类的实例时调用
__autoload:当使用一个类而这个类还未被加载时回去被自定调用

  

你可能感兴趣的:(PHP)