本文汇集PHP开发中经常用到的十段代码,包括Email、64位编码和解码、解压缩、64位编码、解析JSON等,希望对您有所帮助。
1、使用PHP Mail函数发送Email
- $to = "viralpatel.net@gmail.com";
- $subject = "VIRALPATEL.net";
- $body = "Body of your message here you can use HTML too. e.g. ﹤br﹥ ﹤b﹥ Bold ﹤/b﹥";
- $headers = "From: Peter/r/n";
- $headers .= "Reply-To: info@yoursite.com/r/n";
- $headers .= "Return-Path: info@yoursite.com/r/n";
- $headers .= "X-Mailer: PHP5/n";
- $headers .= 'MIME-Version: 1.0' . "/n";
- $headers .= 'Content-type: text/html; charset=iso-8859-1' . "/r/n";
- mail($to,$subject,$body,$headers);
- ?﹥
2、PHP中的64位编码和解码
- function base64url_encode($plainText) {
- $base64 = base64_encode($plainText);
- $base64url = strtr($base64, '+/=', '-_,');
- return $base64url;
- }
- function base64url_decode($plainText) {
- $base64url = strtr($plainText, '-_,', '+/=');
- $base64 = base64_decode($base64url);
- return $base64;
- }
3、获取远程IP地址
- function getRealIPAddr()
- {
- if (!empty($_SERVER['HTTP_CLIENT_IP'])) //check ip from share internet
- {
- $ip=$_SERVER['HTTP_CLIENT_IP'];
- }
- elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) //to check ip is pass from proxy
- {
- $ip=$_SERVER['HTTP_X_FORWARDED_FOR'];
- }
- else
- {
- $ip=$_SERVER['REMOTE_ADDR'];
- }
- return $ip;
- }
4、 日期格式化
- function checkDateFormat($date)
- {
- //match the format of the date
- if (preg_match ("/^([0-9]{4})-([0-9]{2})-([0-9]{2})$/", $date, $parts))
- {
- //check weather the date is valid of not
- if(checkdate($parts[2],$parts[3],$parts[1]))
- return true;
- else
- return false;
- }
- else
- return false;
- }
5、验证Email
- $email = $_POST['email'];
- if(preg_match("~([a-zA-Z0-9!#$%&'*+-/=?^_`{|}~])@([a-zA-Z0-9-]).
- ([a-zA-Z0-9]{2,4})~",$email)) {
- echo 'This is a valid email.';
- } else{
- echo 'This is an invalid email.';
- }
6、在PHP中轻松解析XML
- //this is a sample xml string
- $xml_string="﹤?xml version='1.0'?﹥
- ﹤moleculedb﹥
- ﹤molecule name='Benzine'﹥
- ﹤symbol﹥ben﹤/symbol﹥
- ﹤code﹥A﹤/code﹥
- ﹤/molecule﹥
- ﹤molecule name='Water'﹥
- ﹤symbol﹥h2o﹤/symbol﹥
- ﹤code﹥K﹤/code﹥
- ﹤/molecule﹥
- ﹤/moleculedb﹥";
- //load the xml string using simplexml function
- $xml = simplexml_load_string($xml_string);
- //loop through the each node of molecule
- foreach ($xml-﹥molecule as $record)
- {
- //attribute are accessted by
- echo $record['name'], ' ';
- //node are accessted by -﹥ operator
- echo $record-﹥symbol, ' ';
- echo $record-﹥code, '﹤br /﹥';
- }
7、数据库连接
- ﹤?php
- if(basename(__FILE__) == basename($_SERVER['PHP_SELF'])) send_404();
- $dbHost = "localhost"; //Location Of Database usually its localhost
- $dbUser = "xxxx"; //Database User Name
- $dbPass = "xxxx"; //Database Password
- $dbDatabase = "xxxx"; //Database Name
- $db = mysql_connect("$dbHost", "$dbUser", "$dbPass") or
- die ("Error connecting to database.");
- mysql_select_db("$dbDatabase", $db) or die ("Couldn't select the database.");
- # This function will send an imitation 404 page if the user
- # types in this files filename into the address bar.
- # only files connecting with in the same directory as this
- # file will be able to use it as well.
- function send_404()
- {
- header('HTTP/1.x 404 Not Found');
- print '﹤!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"﹥'."n".
- '﹤html﹥﹤head﹥'."n".
- '﹤title﹥404 Not Found﹤/title﹥'."n".
- '﹤/head﹥﹤body﹥'."n".
- '﹤h1﹥Not Found﹤/h1﹥'."n".
- '﹤p﹥The requested URL '.
- str_replace(strstr($_SERVER['REQUEST_URI'], '?'), '', $_SERVER['REQUEST_URI']).
- ' was not found on this server.﹤/p﹥'."n".
- '﹤/body﹥﹤/html﹥'."n";
- exit;
- }
- # In any file you want to connect to the database,
- # and in this case we will name this file db.php
- # just add this line of php code (without the pound sign):
- # include"db.php";
- ?﹥
8、创建和解析JSON数据
- $json_data = array ('id'=﹥1,'name'=﹥"rolf",'country'=﹥'russia',
- "office"=﹥array("google","oracle"));
- echo json_encode($json_data);
9、处理MySQL时间戳
- $query = "select UNIX_TIMESTAMP(date_field) as mydate
- from mytable where 1=1";
- $records = mysql_query($query) or die(mysql_error());
- while($row = mysql_fetch_array($records))
- {
- echo $row;
- }
10、解压缩Zip文件
- ﹤?php
- function unzip($location,$newLocation){
- if(exec("unzip $location",$arr)){
- mkdir($newLocation);
- for($i = 1;$i﹤ count($arr);$i++){
- $file = trim(preg_replace("~inflating: ~","",$arr[$i]));
- copy($location.'/'.$file,$newLocation.'/'.$file);
- unlink($location.'/'.$file);
- }
- return TRUE;
- }else{
- return FALSE;
- }
- }
- ?﹥
- //Use the code as following:
- ﹤?php
- include 'functions.php';
- if(unzip('zipedfiles/test.zip','unziped/myNewZip'))
- echo 'Success!';
- else
- echo 'Error';
- ?﹥
PHP常用功能如下
1.PHP字符串
字符串声明 变量=''或者""(一般情况会使用单引号,因为写起来会比较方便)
$str = 'Hello PHP';
echo $str;
strpos 计算字符在字符串中的位置(从0开始)
$str = 'Hello PHP';
echo strpos($str,'o'); //计算字符在字符串中的位置
echo '
';
echo strpos($str,'PH');
substr 截取字符串
- $str = 'Hello PHP';
- //截取字符串
- $str1 = substr($str,2,3); //从2位置开始截取,截取长度为3的字符串
- echo $str1;
不传入长度参数的话,会从指定位置一直截取到字符串的末尾
str_split 分割字符串 固定长度的分割(默认长度为1)
- $str = 'Hello PHP';
- //分割字符串
- $result = str_split($str); //将结果保存到一个数组中
- print_r($result); //使用print_r输入一个数组
- echo '<br/>';
- $result1 = str_split($str,2);
- print_r($result1);
explode(分割字符,待分割的字符串) 按照空格进行分割
- $str = 'Hello PHP Java C# C++';
- $result = explode(' ',$str);
- print_r($result);
字符串的连接
- $str = 'Hello PHP Java C# C++';
- //字符串的连接
- $num = 100;
- $str1 = $str.'<br/>Objective-C '.$num;
- echo $str1;
- echo '<br/>';
- $str2 = "$str<br/>Objective-C $num"; //另一中简便的写法
- echo $str2;
新闻热点
疑难解答