非常に便利な 10 個の PHP コード スニペット
1. SMS を送信する
TextMagic API を呼び出します。
// TextMagic PHP ライブラリをインクルードします
require('textmagic-sms-api-php/TextMagicAPI.php');
// ユーザー名とパスワードの情報を設定します
$username = 'myusername';
$password = 'mypassword';
// TM
の新しいインスタンスを作成します
$router = new TextMagicAPI(array(
'ユーザー名' => $ユーザー名、
'パスワード' => $パスワード
));
// テキストメッセージを「999-123-4567」に送信します
$result = $router->send('ウェイクアップ!', array(9991234567), true);
// 結果: 結果は: Array ( [messages] => Array ( [19896128] => 9991234567 ) [sent_text] => 起きて! [parts_count] => 1 )
2. IP に基づく查找地址
function detect_city($ip) {
$default = '不明';
if (!is_string($ip) || strlen($ip)
$ip = '8.8.8.8';
$curlopt_useragent = 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2) Gecko/20100115 Firefox/3.6 (.NET CLR 3.5.30729)';
$url = 'http://ipinfodb.com/ip_locator.php?ip=' 。 urlencode($ip);
$ch =curl_init();
$curl_opt = array(
CURLOPT_FOLLOWLOCATION => 1、
CURLOPT_HEADER => 0、
CURLOPT_RETURNTRANSFER => 1、
CURLOPT_USERAGENT => $curlopt_useragent,
CURLOPT_URL => $url、
CURLOPT_TIMEOUT => 1、
CURLOPT_REFERER => 'http://' 。 $_SERVER['HTTP_HOST'],
);
curl_setopt_array($ch, $curl_opt);
$content =curl_exec($ch);
if (!is_null($curl_info)) {
$curl_info =curl_getinfo($ch);
}
curl_close($ch);
if ( preg_match('{
City : ([^<]*)}i', $content, $regs) ) {
$city = $regs[1];
}
if ( preg_match('{
州/県 : ([^<]*)}i', $content, $regs) ) {
$state = $regs[1];
}
if( $city!='' && $state!='' ){
$location = $city 。 「、」。 $state;
return$location;
}その他{
return$default;
}
}
3. 显示网页的资料番号
$lines = file('http://google.com/');
foreach ($lines as $line_num => $line) {
// 各行をループし、行番号を先頭に追加します
echo "行番号
{$line_num}: " 。 htmlspecialchars($line) 。 "
n";
}
4. 检查サーバーがHTTPSを使用しているかどうか
if ($_SERVER['HTTPS'] != "on") {
echo "これは HTTPS ではありません";
}その他{
echo "これは HTTPS です";
}
5. 显示Faceboo**丝数
関数 fb_fan_count($facebook_name){
// 例: https://graph.facebook.com/digimantra
$data = json_decode(file_get_contents("https://graph.facebook.com/".$facebook_name));
echo $data->likes;
}
6. 检测写真の主要色
$i = imagecreatefromjpeg("image.jpg");
for ($x=0;$x
for ($y=0;$y
$rgb = imagecolorat($i,$x,$y);
$r = ($rgb >> 16) & 0xFF;
$g = ($rgb >> & 0xFF;
$b = $rgb & 0xFF;
$rTotal += $r;
$g合計 += $g;
$b合計 += $b;
$total++;
}
}
$rAverage =round($rTotal/$total);
$gAverage =round($gTotal/$total);
$bAverage =round($bTotal/$total);
7. 获取内存使用情報
echo"初期値: ".memory_get_usage()." バイト n";
/* プリント
初期値: 361400 バイト
*/
// http://www.baoluowanxiang.com/
// メモリを使い切ってみましょう
for ($i = 0; $i
$array []= md5($i);
}
// 配列の半分を削除しましょう
for ($i = 0; $i
unset($array[$i]);
}
echo"最終: ".memory_get_usage()." バイト n";
/* プリント
最終: 885912 バイト
*/
echo "ピーク: ".memory_get_peak_usage()." バイト n";
/* プリント
ピーク: 13687072 バイト
*/
8. gzcompress() を使用してデータを圧縮します
$string =
「痛みの物語自体が重要であり、その後も続きます
」
顧客サービスさあ、私のアルトリクスでやってみましょう
コーチング簡単なことは何もありません。それは枕です、
知恵か前庭か、病院に良い値段はありません。
これまで湖の所有者になった人は誰もいません。誠にありがとうございます
コーチングのプロセスに従うことが重要です。一部
価格ウラムコーパーの骨壷をターゲットにした人。そしてミサも
しかし、醜い喪の時。 Curabitur sed nibh eu elit
ソフトな宿題それはまさに家であり、人生の結果です
今を飾りますその大きな子供たちの中で
アディピシングを置く地球しかし、私が恐れているのではなく、ラキニア
宣伝するしかし、それがなければ、柔らかく、柔らかく飾ります
しかし今は宿題にも間に合います
。
彼はヘンドリット・シュレシッカーを恐れる必要はない
サッカーのためではありません。予想通り、湖には飲める水はありません
そのeuismodの壺のメンバー。 ";
$compressed = gzcompress($string);
「元のサイズ: 」をエコーします。 strlen($string)."n";
/* プリント
元のサイズ: 800
*/
echo "圧縮サイズ: "。 strlen($compressed)."n";
/* プリント
圧縮サイズ: 418
*/
// 取り戻します
$original = gzuncompress($compressed);
9. PHP を使用して Whois 名
function whois_query($domain) {
// ドメイン名を修正します:
$domain = strto lower(trim($domain));
$domain = preg_replace('/^http:///i', '', $domain);
$domain = preg_replace('/^www./i', '', $domain);
$domain =explode('/', $domain);
$domain = トリム($domain[0]);
// ドメイン名から TLD を分割します
$_domain =explode('.', $domain);
$lst = count($_domain)-1;
$ext = $_domain[$lst];
// リソースとリストが見つかります
// ウィキペディアでは次のようになります:
//
// http://de.wikipedia.org/wiki/Whois
//
$servers = array(
「ビジネス」=> "whois.neulevel.biz"、
「com」=> "whois.internal.net"、
「私たち」 => "whois.nic.us"、
「コープ」=> "whois.nic.coop"、
"情報" => "whois.nic.info"、
「名前」=> "whois.nic.name"、
「ネット」=> "whois.internal.net"、
"政府" => "whois.nic.gov"、
「食べる」=> "whois.internal.net"、
「千」 => "rs.internic.net"、
"int" => "whois.iana.org"、
「そして」 => "whois.nic.ac"、
"ae" => "whois.uaenic.ae"、
「で」=> "whois.ripe.net"、
「au」=> "whois.aunic.net"、
「である」=> "whois.dns.be"、
"bg" => "whois.ripe.net"、
"br" => "whois.registro.br"、
"bz" => "whois.belizenic.bz"、
"ca" => "whois.cira.ca"、
"cc" => "whois.nic.cc"、
"ch" => "whois.nic.ch"、
"cl" => "whois.nic.cl"、
"cn" => "whois.cnnic.net.cn"、
"cz" => "whois.nic.cz"、
「の」 => "whois.nic.de"、
"fr" => "whois.nic.fr"、
「ふ」=> "whois.nic.hu"、
「つまり」 => "whois.domainregistry.ie"、
「彼」=> "whois.isoc.org.il"、
「で」=> "whois.ncst.ernet.in"、
「行く」=> "whois.nic.ir"、
"mc" => "whois.ripe.net"、
「へ」 => "whois.tonic.to",
「テレビ」=> "whois.tv"、
「る」=> "whois.ripn.net"、
"組織" => "whois.pir.org"、
「空気」=> "whois.information.aero",
"nl" => 「whois.domain-registry.nl」
);
if (!isset($servers[$ext])){
day('エラー: 一致する NIC サーバーが見つかりません!');
}
$nic_server = $servers[$ext];
$output = '';
// Whois サーバーに接続します:
if ($conn = fsockopen ($nic_server, 43)) {
fputs($conn, $domain."rn");
while(!feof($conn)) {
$output .= fgets($conn,128);
}
fclose($conn);
}
else { die('エラー: ' . $nic_server . '!'); に接続できませんでした。 }
$output を返します
}
10.電子メール送信PHP错误
// カスタム エラー ハンドラー
function nettuts_error_handler($number, $message, $file, $line, $vars){
$email = "
行
でエラー ($number) が発生しました
$line ファイル内: $file.
$message
";
$email .= "" 。 print_r($vars, 1) 。 "";
$headers = 'コンテンツタイプ: text/html; charset=iso-8859-1' 。 "rn";
// エラーを誰かに電子メールで送信します...
error_log($email, 1, 'you@youremail.com', $headers);
// エラーへの対応方法を (ユーザー側で) 必ず決定してください
// エラー メッセージをエコーするか、プロジェクト全体を強制終了します。あなた次第...
// 以下のコードは、エラーが
を超えた場合にのみ「死ぬ」ことを保証します。
// ただのお知らせです。
if ( ($number !== E_NOTICE) && ($number
die("エラーが発生しました。後でもう一度お試しください。");
}
}
// エラーを処理するにはカスタム関数を使用する必要があります。
set_error_handler('nettuts_error_handler');
// エラーをトリガーします... (var が存在しません)
echo$存在しない一部のもの;