1.时间和日期
<?php echo time().'<br>';//1425304002 时间戳,1970.1.1以来的毫秒数 echo date('Y-m-d H:i:s').'<br>';//2015-03-02 14:52:30 实际是21点,因时区问题 echo date_default_timezone_get().'<br>';//Europe/Berlin 默认时区 date_default_timezone_set('Asia/Shanghai');//设置时区,Beijing不行 echo date('Y-m-d H:i:s').'<br>';//2015-03-02 21:57:39 现在的时间 echo date('Y-m-d H:i:s','2000').'<br>';//1970-01-01 08:33:20 时间戳转换为日期
2.JSON格式数据的操作
<?php //JSON format /*[1,2,5,7,8,'m',[6,7,8],{'h':'hello'}] 数组,可以存放键值对 {'h':'hello','w':'world',[1,2,3]} 键值对,可以存放数组*/ //encode 编码 $arr = array(1,2,5,8,'hello','m',array('h'=>'hello','n'=>'name')); print_r($arr);//Array ( [0] => 1 [1] => 2 [2] => 5 [3] => 8 [4] => hello [5] => m [6] => Array ( [h] => hello [n] => name ) ) echo '<br>'.json_encode($arr).'<br>';//[1,2,5,8,"hello","m",{"h":"hello","n":"name"}] 把数组转为json格式的数据 $obj = array('h'=>'hello','w'=>'world',array(3,2,1)); echo json_encode($obj).'<br>';//{"h":"hello","w":"world","0":[3,2,1]} 转为json格式的对象 //decode 解码 $jsonStr = '{"h":"hello","w":"world","0":[3,2,1]}'; $o = json_decode($jsonStr); print_r($o);//stdClass Object ( [h] => hello [w] => world [0] => Array ( [0] => 3 [1] => 2 [2] => 1 ) ) PHP对象 echo '<br>'.$o->h;//hello
3.文件操作
写文件:
<?php //write date //$f = fopen('data.txt','w');//文件名,write(写出) $f = @fopen('data.txt','w');//@ 有警告也不输出 //function fwrite ($handle, $string, $length = null) if($f){ fwrite($f,'hello php'); fclose($f);//关流 echo 'ok'; }else{ echo '在MAC下可能出现权限不足的问题'; }读文件,文件data2.txt
hello php2 第二行 第4行读文件代码:
<?php //read date //一次出一行 $f2 = @fopen('data2.txt','r');//r:read $content = fgets($f2); echo '<br>'.$content;//hello php2 echo '<br>'.fgets($f2);//第二行 fclose($f2); //循环,全出 $f3 = @fopen('data2.txt','r'); while(!feof($f3)){ echo '<br>'.fgets($f3);//第三行就输出个换行 } fclose($f3); //直接获取文件内容 echo '<br>'; echo file_get_contents('data2.txt');//hello php2 第二行 第4行
4.生成图片
<?php $img = imagecreate(400,300);//宽400,高300 imagepng($img);//Warning: imagepng(): gd-png error: no colors in palette 错误:没颜色 imagecolorallocate($img,255,255,0);//背景色,只执行一次 function imagecolorallocate ($image, $red, $green, $blue) imagepng($img);//会当作文本输出图片数据*/正确地生成一张图:
<?php $img = imagecreate(400,300); imagecolorallocate($img,255,255,0); header('Content-type:image/png'); imagepng($img);//IE10测试是下载,用谷歌和火狐内核正常作图:
<?php $img = imagecreate(400,300); imagecolorallocate($img,255,255,0); header('Content-type:image/png'); //function imageellipse ($image, $cx, $cy, $width, $height, $color)画椭圆 imageellipse($img,200,200,50,50,imagecolorallocate($img,255,0,0)); imagepng($img); //更多方法:<a target=_blank href="http://php.net/manual/zh/ref.image.php" target="_blank">http://php.net/manual/zh/ref.image.php</a>
5.图片打水印实例
把上面的图加水印:
<?php $img = imagecreatefrompng('1.png');//传入png图片 //function imagestring ($image, $font, $x, $y, $string, $color) //font 内置5个字体:1,2,3,4,5 imagestring($img,5,5,5,'MMMMMMMMM',imagecolorallocate($img,255,0,0)); header('Content-type:image/jpeg');//可以输出别的格式 //imagepng($img); imagejpeg($img);