分類彙整:PHP

PHP取得指定月份當月天數

$month_days  = cal_days_in_month(CAL_GREGORIAN, date(‘m’), date(‘Y’));

發表於 PHP | 發表迴響

將 mssql datetime 利用PHP 轉換日期格式

$row['Birthday']->format(‘Y-m-d’) ; date_format($row['Birthday'], ‘Y-m-d’) ;  

發表於 MSSQL, PHP | 發表迴響

PHP手機驗證

$TELEPHONE = 0912345678 if(preg_match("/09[0-9]{2}[0-9]{6}/", $TELEPHONE)) { echo "正確"; }else{ echo "錯誤"; }

發表於 PHP | 發表迴響

偵測檔案的MIME_TYPE

function get_mime($file) { if (function_exists("finfo_file")) { $finfo = finfo_open(FILEINFO_MIME_TYPE); // return mime type ala mimetype extension $mime = finfo_file($finfo, $file); finfo_close($finfo); return $mime; } else if (function_exists("mime_content_type")) { return mime_content_type($file); } else if (!stristr(ini_get("disable_functions"), "shell_exec")) { // http://stackoverflow.com/a/134930/1593459 $file = … 繼續閱讀

發表於 PHP | 發表迴響

HTTP Header Referer

if(isset($_SERVER['HTTP_REFERER'], $_SERVER['HTTP_HOST'])) { if(parse_url($_SERVER['HTTP_REFERER'], PHP_URL_HOST) != $_SERVER['HTTP_HOST']) { header("Location: ./\n"); exit; } }

發表於 PHP | 發表迴響

更加安全的php.ini配置

修改/etc/php.ini 讓 php 配置更加安全 # 禁用危險的函數 disable_functions = phpinfo, system, exec # 每個腳本的最大執行時間,單位秒 max_execution_time = 30 #每個腳本解析請求資料的最大時間 max_input_time = 60 #每個腳本可以消耗的最大記憶體(8MB) memory_limit = 8M #PHP要接收的POST資料最大大小 post_max_size = 8M #是否允許HTTP檔上傳 file_uploads = Off #允許上傳的最大檔大小 upload_max_filesize = 2M #不將PHP錯誤消息暴露給外部使用者 display_errors = Off … 繼續閱讀

發表於 PHP | 發表迴響

在MS SQL Server中實現MySQL limit的做法

在MS SQL Server中,雖然有top的用法,但要做到像MySQL那樣,有 limit 1, 100 這種做法,下列是一種方式: SELECT * FROM (SELECT *, ROW_NUMBER() OVER (ORDER BY id) as row FROM myTable) a WHERE row > 5 and row <= 10 上列用法,只有在SQL Server 2005以後的版本才能使用。 參考文獻:http://bioankeyang.blogspot.tw/2013/03/ms-sql-servermysql-limit.html

發表於 MSSQL, PHP | 發表迴響

big5 vs utf-8互轉

big5 轉 utf-8 $str = iconv("big5″,"UTF-8″,$str); utf-8 轉 big5 $str = iconv("UTF-8″,"big5″,$str);

發表於 PHP | 發表迴響

日期時間函式

$today = new DateTime(); $birthday  = new DateTime("1980-01-01″); $interval   = $today->diff($birthday ); echo $interval->format("%y years, %m months, %a days, %h hours, %i minutes, %S seconds"); echo $interval->format("%y years"); echo $interval->format("Y-m-d"); echo $interval->days; 傳回自1970 /01/01  00:00:00 到現在相差秒數 time() 3 小時後的日期時間 date("Y-m-d h : … 繼續閱讀

發表於 PHP | 發表迴響