ホームページ  >  記事  >  バックエンド開発  >  7 つの超実践的な PHP コード スニペットを共有する_PHP チュートリアル

7 つの超実践的な PHP コード スニペットを共有する_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-21 15:22:00766ブラウズ

1. 非常にシンプルなページ キャッシュ
プロジェクトが CMS システムやフレームワークに基づいていない場合は、シンプルなキャッシュ システムを構築するのが非常に実用的です。以下のコードは非常に単純ですが、実際には小規模な Web サイトの問題を解決できます。

コードをコピーします コードは次のとおりです:

// キャッシュされたファイルのパスと名前を定義します
$cachefile = 'cached-files/'.date('M-d-Y ').' .php';
// ファイルを保持する時間を 5 時間に設定します。
// キャッシュされたファイルがまだ新しいかどうかを確認します。
if (file_exists($cachefile) && time() - $cachetime < filemtime($cachefile)) {
include($cachefile)
}
// がある場合ファイルがないか、ファイルが古すぎる場合は、ページをレンダリングして

を出力します。
// キャッシュされたコンテンツをファイルに保存します
$fp = fopen($fp, ob_get_contents());最後にブラウザ出力を送信します
ob_end_flush();


ここをクリックして詳細を表示します: http://wesbos.com/simple-php-page-caching-technique/


2.
緯度と経度を用いてA点からB点までの距離を計算するとても便利な距離計算機能です。この関数は、マイル、キロメートル、海里の 3 つの単位タイプで距離を返すことができます。



コードをコピーします

コードは次のとおりです:

function distance($lat1, $lon1, $lat2, $lon2, $unit) {
$theta = $lon1 - $lon2; = sin( deg2rad($lat1)) * sin(deg2rad($lat2)) + cos(deg2rad($lat1)) * cos(deg2rad($lat2)) * cos(deg2rad($theta)); acos($ dist);
$dist = rad2deg($dist);
$unit = strtoupper($unit); return ($miles * 1.609344); } else if ($unit == "N") { return ($miles * ); else {
return $miles;



コードをコピーします

コードは次のとおりです:


echo distance(32.9697, -96.80322, 29.46786, -98.53506, "k")." km"


ここをクリックして詳細を表示します: http: //www.phpsnippets .info/calculate- distances-in-php


3. 秒を時間に変換します (年、月、日、時...)

この便利な関数は、秒で表されるイベントを年に変換できます。月、日、時間、その他の時間形式。


コードをコピー
コードは次のとおりです: function Sec2Time($time){ if(is_numeric($time)){
$value = array(
"years" => 0, "日" = > 0、"時間" => 0、
"分" => 0、"秒" => 0、
);
if($time >= 31556926){
$value[ "年" ] = フロア($time/31556926);
$time = ($time%31556926)
} if($time >= 86400){ $value["days"] = フロア($time) /86400) ;
$time = ($time%86400);
if($time >= 3600){
$value["hours"] = フロア($time/3600); $time% 3600); } if($time >= 60){ $value["分"] = フロア($time/60); $time = ($time%60); $value[ "秒"] = Floor($time);
return (array) $value;
return (bool) FALSE;


ここをクリックして詳細を表示します: http:// ckorp.net /sec2time.php


4. ファイルの強制ダウンロード

mp3 などの一部のファイルは通常、クライアントのブラウザで直接再生または使用されます。強制的にダウンロードさせたい場合でも問題ありません。次のコードを使用できます:



コードをコピー

コードは次のとおりです:


function downloadFile($file){
$file_name = $file
$mime = 'application/force-download';
header('Pragma : public'); // 必須
header('Expires: 0'); // キャッシュなし
header('Cache-Revalidate, post-check=0, pre-check=0) ');
header ('Cache-Control: private',false);
header('Content-Disposition:attachment; filename="'.basename($file_name) ).'"' );
header('Content-Transfer-Encoding: binary');
header('Connection: close');
readfile($file_name); // プッシュアウト
exit();
}


ここをクリックして詳細を表示します: クレジット: Alessio Delmonti

5. Google API を使用して現在の天気情報を取得します
今日の天気を知りたいですか?このコードでは、わずか 3 行のコードでそれがわかります。 ADDRESS を希望する都市に置き換えるだけです。
コードをコピーします コードは次のとおりです:

$xml = simplexml_load_file('http://www.google.com/ig/api?weather=ADDRESS');
$information = $xml ->xpath ("/xml_api_reply/weather/current_conditions/condition");
echo $information[0]->attributes();
詳細についてはここをクリックしてください: http://ortanotes.tumblr.com/post /200469319/ current-weather-in-3-lines-of-php


6. 住所の経度と緯度を取得する
Google Maps API の人気により、開発者は住所の経度と緯度を取得する必要があることがよくあります。特定の場所。この非常に便利な関数は、パラメータとして住所を受け取り、経度と緯度のデータを含む配列を返します。

コードをコピーします コードは次のとおりです:
function getLatLong($address){
if (!is_string($address))die("すべてのアドレスは文字列として渡す必要があります"); _url = sprintf ('http://maps.google.com/maps?output=js&q=%s',rawurlencode($address));
$_result = false
if($_result = file_get_contents($_url)) {
if (strpos($_result,'errortips') > 1 || strpos($_result,'もしかして:') !== false) return false;
preg_match('!center:s*{lat: s*( -?d+.d+),lng:s*(-?d+.d+)}!U', $_result, $_match);
$_coords['lat'] = $_match[1]; _coords['long'] = $_match[2];
}
return $_coords;


ここをクリックして詳細を表示します: http://snipplr.com/view.php?codeview&id=47806

7 . PHP を使用する Google からドメイン名のファビコン アイコンを取得します

一部の Web サイトまたは Web アプリケーションでは、他の Web サイトのファビコン アイコンを使用する必要があります。 Google と PHP を使用すると簡単に実行できますが、Google が接続をリセットしないことが前提となります。

コードをコピーします
コードは次のとおりです: function get_favicon($url){ $url = str_replace("http://",'',$url);
return "http: //www. google.com/s2/favicons?domain=".$url;
}


ここをクリックして詳細を表示します: http://snipplr.com/view.php?codeview&id=45928


http://www.bkjia.com/PHPjc/324789.html

www.bkjia.com

http://www.bkjia.com/PHPjc/324789.html技術記事 1. 非常に単純なページ キャッシュ プロジェクトが CMS システムまたはフレームワークに基づいていない場合は、単純なキャッシュ システムを構築するのが非常に実用的です。以下のコードはシンプルですが、ちょっとした用途には役立ちます...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。