この記事では主にPHPカスタム関数の使い方を紹介しますので、興味のある方は参考にしていただければ幸いです。
1.クライアントIPを取得します
function getOnlineIp() { $strOnlineIp = ""; if(getenv('HTTP_CLIENT_IP') && strcasecmp(getenv('HTTP_CLIENT_IP'), 'unknown')) { $onlineip = getenv('HTTP_CLIENT_IP'); } elseif(getenv('HTTP_X_FORWARDED_FOR') && strcasecmp(getenv('HTTP_X_FORWARDED_FOR'), 'unknown')) { $onlineip = getenv('HTTP_X_FORWARDED_FOR'); } elseif(getenv('REMOTE_ADDR') && strcasecmp(getenv('REMOTE_ADDR'), 'unknown')) { $onlineip = getenv('REMOTE_ADDR'); } elseif(isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'], 'unknown')) { $onlineip = $_SERVER['REMOTE_ADDR']; } preg_match("/[\d\.]{7,15}/", $onlineip, $onlineipmatches); $strOnlineIp = $onlineipmatches[0] ? $onlineipmatches[0] : 'unknown'; return $strOnlineIp; }
ここで、マルチレベルプロキシを使用している場合、実際のIPは取得できません。
2. 文字列インターセプト、中国語をサポート
function getStrTruncate($string, $length = 80, $etc = ''){ if ($length == 0) return ''; mb_internal_encoding("UTF-8"); $string = str_replace("\n","",$string); $strlen = mb_strwidth($string); if ($strlen > $length) { $etclen = mb_strwidth($etc); $length = $length - $etclen; $str=''; $n = 0; for($i=0; $i<$length; $i++) { $c = mb_substr($string, $i, 1); $n += mb_strwidth($c); if ($n>$length) { break; } $str .= $c; } return $str.$etc; } else { return $string; } } echo getStrTruncate("海底苍鹰博客",7); //结果是海底苍,utf8一个汉字对应二个字符
3. フォーラムやブログでよく使用される時間関数
function timeFromNow($dateline) { if(emptyempty($dateline)) return false; $seconds = time() - $dateline; if ($seconds < 60){ return "1分钟前"; }elseif($seconds < 3600){ return floor($seconds/60)."分钟前"; }elseif($seconds < 24*3600){ return floor($seconds/3600)."小时前"; }elseif($seconds < 48*3600){ return date("昨天 H:i", $dateline).""; }else{ return date('Y-m-d', $dateline); } } echo timeFromNow(strtotime("2012-07-07 14:15:13")); //昨天 14:15 echo timeFromNow(strtotime("2012-07-08 14:15:13")); //1小前
4. すべてをフィルタリングしたい場合タグstrip_tagsで十分です。
概要
: 上記がこの記事の全内容です。皆様の学習に役立つことを願っています。 関連する推奨事項:
phpは、特定の範囲内でN個の非反復乱数を取得するメソッドを実装します
以上がPHPカスタム関数の使い方の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。