这些我在asp中很常用的功能,在php中有相应的区分和简化。
今天有点小头疼,老大交给的任务还么有完成。第一次写项目说明书和流程说明真难阿。
凡是都有第一次,这也是我成长的基石。加油。。。。。。
获取浏览器IP地址
function getRemoteIPAddress() {
$ip = $_SERVER['REMOTE_ADDR'];
return $ip;
}
如果有代理服务器的情况下获取IP
function getRealIPAddress() {
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;
}
获取 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;
}
验证日期格式:YYYY-MM-DD
function checkDateFormat($date) {
// match the format of the date
if (preg_match("/^([0-9]{4})-([0-9]{2})-([0-9]{2})$/", $date, $parts)) {
// check whether the date is valid of not
if (checkdate($parts[2], $parts[3], $parts[1])) {
return true;
} else {
return false;
}
} else {
return false;
}
}
重定向
header('Location: http://www.php100.com');
发送邮件
$to = "someone@oschina.net";
$subject = "Your Subject here";
$body = "Body of your message here you can use HTML too. e.g.
Bold ";
$headers = "From: You\r\n";
$headers .= "Reply-To: info@yoursite.com\r\n";
$headers .= "Return-Path: info@yoursite.com\r\n";
$headers .= "X-Mailer: PHP\n";
$headers .= 'MIME-Version: 1.0' . "\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
mail($to, $subject, $body, $headers);
BASE64 编码和解码
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;
}
JSON 处理
$json_data = array ('id'=>1,'name'=>"John",'country'=>'Canada',"work"=>array("Google","Oracle"));
echo json_encode($json_data);
$json_string='{"id":1,"name":"John","country":"Canada","work":["Google","Oracle"]} ';
$obj=json_decode($json_string);
// print the parsed data
echo $obj->name; //displays John
echo $obj->work[0]; //displays Google
检测用户浏览器类型
$useragent = $_SERVER ['HTTP_USER_AGENT'];
echo "Your User Agent is: " . $useragent;
显示网页源码
$lines = file('http://www.php100.com/index.php');
foreach ($lines as $line_num => $line) {
// loop thru each line and prepend line numbers
echo "Line #<b>{$line_num}</b> : " . htmlspecialchars($line) . "<br>\n";
}
调整服务器时间
$now = date('Y-m-d-G');
$now = strftime("%Y-%m-%d-%H", strtotime("$now -8 hours"));