文档章节

Some Use full PHP Programs

stone_
 stone_
发布于 2013/11/01 10:18
字数 471
阅读 37
收藏 0

1. MySQL Database connection using PHP.

<?php
$config = array('host'=>'localhost', 'user'=>'webuser', 'pass'=>'123', 'databse'=>'class');
$link=mysql_connect($config['host'],$config['uname'],$config['pass']) or die("Database Connection Failed".mysql_error());
mysql_select_db($config['database'], $link) or die("database cannot be selected".mysql_error());
 
?>

2. Display thumbnail image from youtube or vimeo video.


function video_image($url){
   $image_url = parse_url($url);
     if($image_url['host'] == 'www.youtube.com' || 
        $image_url['host'] == 'youtube.com'){
         $array = explode("&", $image_url['query']);
         return "http://img.youtube.com/vi/".substr($array[0], 2)."/0.jpg";
     }else if($image_url['host'] == 'www.youtu.be' || 
              $image_url['host'] == 'youtu.be'){
         $array = explode("/", $image_url['path']);
         return "http://img.youtube.com/vi/".$array[1]."/0.jpg";
     }else if($image_url['host'] == 'www.vimeo.com' || 
         $image_url['host'] == 'vimeo.com'){
         $hash = unserialize(file_get_contents("http://vimeo.com/api/v2/video/".
         substr($image_url['path'], 1).".php"));
         return $hash[0]["thumbnail_medium"];
     }
}

<img src="<?php echo video_image('youtube URL'); ?>" />

3. PHP function to get age for date of birth.


function age_from_dob($dob){
$dob = strtotime($dob);
$y = date('Y', $dob);
 if (($m = (date('m') - date('m', $dob))) < 0) {
  $y++;
 } elseif ($m == 0 && date('d') - date('d', $dob) < 0) {
  $y++;
 }
return date('Y') - $y;
}

echo age_from_dob('2005/04/19'); date in yyyy/mm/dd format.

4. Random password generation using PHP.

(1)


echo substr(md5(uniqid()), 0, 8);

(2)



function rand_password($length){
  $chars =  'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz';
  $chars .= '0123456789' ;
  $chars .= '!@#%^&*()_,./<>?;:[]{}\|=+';

  $str = '';
  $max = strlen($chars) - 1;

  for ($i=0; $i < $length; $i++)
    $str .= $chars[rand(0, $max)];

  return $str;
}

echo rand_password(16);

5. Get date difference PHP.

date_default_timezone_set("Asia/Calcutta");

function dt_differ($start, $end){
  $start = date("G:i:s:m:d:Y", strtotime($start));
  $date1=explode(":", $start);

  $end  = date("G:i:s:m:d:Y", strtotime($end));
  $date2=explode(":", $end);
	
  $starttime = mktime(date($date1[0]),date($date1[1]),date($date1[2]),
  date($date1[3]),date($date1[4]),date($date1[5]));
  $endtime   = mktime(date($date2[0]),date($date2[1]),date($date2[2]),
  date($date2[3]),date($date2[4]),date($date2[5]));

  $seconds_dif = $starttime-$endtime;

  return $seconds_dif;
}


// call the function

  $today = date("Y-n-j H:i:s");
  $fromday = "2012-12-31 23:59:59";
  $timediffer = dt_differ($fromday, $today);
  echo $timediffer." seconds";

6.Zip Multiple Files and Download

This script will zip multiple files and  force download created zip file. This function required Zip Archive enable in your server.

<?php

function zipFilesDownload($file_names,$archive_file_name,$file_path){
$zip = new ZipArchive();
if ($zip->open($archive_file_name, ZIPARCHIVE::CREATE )!==TRUE) {
  exit("cannot open <$archive_file_name>\n");

}
foreach($file_names as $files){
  $zip->addFile($file_path.$files,$files);

}
$zip->close();


header("Content-type: application/zip"); 
header("Content-Disposition: attachment; filename=$archive_file_name"); 
header("Pragma: no-cache"); 
header("Expires: 0"); 
readfile("$archive_file_name"); 
exit;

}


$fileNames=array('files/file1.docx','files/file1.pdf');
$zip_file_name='myFile.zip';
$file_path=dirname(__FILE__).'/';

zipFilesDownload($fileNames,$zip_file_name,$file_path);

?>

Unzip Files in Web server

<?php
$zip = zip_open("moooredale.zip");
  if ($zip) {
   while ($zip_entry = zip_read($zip)) {
   $fp = fopen(zip_entry_name($zip_entry), "w");
   if (zip_entry_open($zip, $zip_entry, "r")) {
   $buf = zip_entry_read($zip_entry, zip_entry_filesize($zip_entry));
   fwrite($fp,"$buf");
   zip_entry_close($zip_entry);
   fclose($fp);
 }
}
zip_close($zip);
}
?>


 





© 著作权归作者所有

共有 人打赏支持
stone_
粉丝 20
博文 221
码字总数 163611
作品 0
洛阳
程序员
私信 提问
Language Descriptions(摘自 code complete)

Language Descriptions The development histories of some languages are interesting, as are their general capabilities. Here are descriptions of the most common languages in use t......

面码
2014/05/30
0
0
Xfce设置代理Proxy

在Debian系的Linux系统中,可以编辑/etc/environment文件,增加下面几行: http_proxy=http://myproxy.server.com:8080/https_proxy=http://myproxy.server.com:8080/ftp_proxy=http://mypr......

码农小骚年
2016/01/11
1K
0
phpcbf工具帮助

` [root@localhost workspace]# phpcbf --help Usage: phpcbf [-nwli] [-d key[=value]] [--stdin-path=<stdinPath>] [--standard=<standard>] [--sniffs=<sniffs>] [--exclude=<sniffs>] [-......

chunhei2008
2016/12/14
6
0
How to remove a Trojan, Virus, Worm, or other Malw

bleepingcomputer (这网站直翻是哔哔电脑么2333 其实一直都觉得国外的杀毒优化软件还是蛮好用,就是动不动要钱(天朝劣根性。。。 国内免费就是各种绑定+广告,,不过金山用着还是满顺手的,...

phala
2015/10/22
30
0
《Learing PHP design pattern》

a class should have only a single responsibility. one of the most important features of design patterns is reuse of the objects. One of the main functions of OOP and design patt......

hustnzj
2016/11/01
2
0

没有更多内容

加载失败,请刷新页面

加载更多

Deepin 安装wireshark抓包工具

一、关于deepin和wireshark deepin目前已经发展到15.8了,开发Android毫无压力,在四个月的使用时间里,已经非常习惯了。目前想处理一些网络问题,因此尝试在deepin上安装一个抓包工具。dee...

IamOkay
32分钟前
5
0
Docker镜像仓库服务-Nexus

建立云原生集群系统,建立自己的私有Docker镜像仓库必不可少。一方面可以加快多节点部署容器镜像的下载速度,另一方面是为了安全(容器里存储有系统所有的信息、包括密码、数据库等等,切记不...

openthings
44分钟前
1
0
127.0.0.1 和 0.0.0.0 地址的区别

1. IP地址分类 1.1 IP地址表示 IP地址由两个部分组成,net-id和host-id,即网络号和主机号。 net-id:表示ip地址所在的网络号。 host-id:表示ip地址所在网络中的某个主机号码。 即: IP-a...

华山猛男
今天
22
0
解决Unknown host 'd29vzk4ow07wi7.cloudfront.net'. You may need to adjust the proxy settings in Gradle.

把 总项目 下的 build.gradle 中的 两个 jcenter() 用 maven{ url ‘http://maven.aliyun.com/nexus/content/groups/public/’} 代替。...

lanyu96
今天
6
0
基于redis的分布式锁

redisson提供了基于redis的分布式锁实现方式,本文就尝试了下锁的使用方式。Redisson同时还为分布式锁提供了异步执行的相关方法,第二节执行介绍。 一、可重入锁验证 同一个jvm里面同一线程的...

noob_chr
今天
15
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部