程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> PHP日常實用小Tips

PHP日常實用小Tips

編輯:關於PHP編程

1.簡易判斷ip地址合法性
2.email的正則判斷
3.檢測ip地址和mask是否合法的例子
4.關於表單刷新
5.關於表單刷新
1.簡易判斷ip地址合法性
if(!strcmp(long2ip(sprintf("%u",ip2long($ip))),$ip)) echo "is ipn";
----
2.email的正則判斷
eregi("^[_.0-9a-zA-Z-]+@([0-9a-zA-Z][0-9a-zA-Z_-]+.)+[a-zA-Z]$", $email);
----
3.檢測ip地址和mask是否合法的例子
$ip = '192.168.0.84';
$mask = '255.255.255.0';
$network = '192.168.0';
$ip = ip2long($ip);
$mask = ip2long($mask);
$network = ip2long($network);
if( ($ip & $mask) == $network) echo "valid ip and maskn";
?>
----
4.今天解決了一個巨郁悶的問題
ipb的添加用戶頁面toadduser.php似乎會重復提交,導致在添加新用戶的時候總是報該用戶已經存在...已經郁悶了我3天了,終於搞定,大快人心!
----
5.關於表單刷新
問:為什麼我在點擊浏覽器的後退按鈕後,所有字段的信息都被清空了?
答:這是由於你在你的表單提交頁面中使用了 session_start 函數。該函數會強制當前頁面不被緩存。解決辦法為,在你的 Session_start 函數後加入 header("Cache-control: private"); 注意在本行之前你的PHP程序不能有任何輸出。
補充:還有基於session的解決方法,在session_start前加上
session_cache_limiter('nocache');// 清空表單
session_cache_limiter('private'); //不清空表單,只在session生效期間
session_cache_limiter('public'); //不清空表單,如同沒使用session一般
可以在session_start();前加上 session_cache_limiter("private,max-age=10800");
摘自phpe.net
----
6.快速搞定文件下載頭部輸出
header("Content-type: application/x-download");
header("Content-Disposition: attachment; filename=$file_download_name;");
header("Accept-Ranges: bytes");
header("Content-Length: $download_size");
echo 'xxx'
.......2004-08-19 11:50:30
----
7.用header輸出ftp下載方式,並且支持斷點續傳
一個例子:
header('Pragma: public');
header('Cache-Control: private');
header('Cache-Control: no-cache, must-revalidate');
header('Accept-Ranges: bytes');

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved