PHP で開発する場合、非常に便利なメソッドやコード スニペットをいくつか集めておくと、開発作業に大きな利便性をもたらします。今日は、とても使いやすい PHP コード スニペットを 10 個紹介します。気に入っていただければ幸いです。
場合によっては、顧客にテキスト メッセージを送信する必要がある場合は、textMagic を検討してください。この機能を実装するための非常にシンプルな API が提供されます。しかし、無料ではありません。
1
2
3
4
5
6
7
8
9
1011
12
13
14
15
16
17
// TextMagic PHP lib をインクルードします
require ( 'textmagic-sms-api-php/TextMagicAPI.php' );
// ユーザー名とパスワード情報を設定します
$username = ' myusername' ;
$password = 'mypassword' ;
// TM の新しいインスタンスを作成します
$router = new TextMagicAPI( array (
) 'username' => $username ,
' pass word' => $password
));
// '999-123-4567' にテキストメッセージを送信します
$result = $router ->send( 'Wake up!' , array ( 9991234567) , true);
// 結果: Array ( [messages] => Array ( [19896128] => 9991234567 ) [sent_text] => 起きてください! [parts_count] => 1 )
2. IP によってソースを特定する
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
function detect_city( $ ip) {
$default = '不明' ;
if (! is_string ( $ip ) || strlen ( $ip ) < 1 || $ip == '127.0.0.1' || $ip == 'localhost' )
$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 =&gt; 1、curlopt_header =&gt;curlopt_returntransfer =&gt; URL 、CURLOPT_TIMEOUT => 1,
=> $_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 = $regs [1 ];
}
if ( preg_match( '{
$state = $登録[1];
}
if ( $city != '' && $state != '' ){
$location = $city 。 「、」。 $state ;
$location を返す ;
} else {
ウェブページのソースコード。これは簡単なコード スニペットです。2 行目の URL を変更するだけです。
1
2
3 46
$lines = file( 「 http://google.com/ 」) ;
foreach ( $lines as $line_num => $line ) {
// 各行をループし、行番号を先頭に追加します
echo "Line #{$line_num} : " . htmlspecialchars( $line ) . "
n" ;
4. サーバーが HTTPS 接続であるかどうかを確認する
コード実行環境が HTTPS サーバーであるかどうかを確認する必要がありますか?以下のコードはこれを実現するのに役立ちます。非常に簡単です。
1
2
3
4
5echo "これはHTTPS ではありません" ;
} else {
echo "This is HTTPS" ;
}
5. テキスト内に Facebook のファンの数を表示します
Facebook に何人のファンがいるかを確認したいですか?以下のコードはこれを実現するのに役立ちます。
1
2
3
4
5. com/digimantra
$data = json_decode ( file_get_contents ( " https://graph.facebook .com/" . $facebook_name ));
echo $data ->likes;
}
6. 画像のメインカラーを決定する
以下のコードは非常に実用的で、決定するのに役立ちます。画像の主要な色を分析できます。
1
2
3
4
5 68
9
10
11
12
13
14
15
16
17
18
19
$i = imagecreatefromjpeg( "image.jpg" );
for ( $x =0; $x
$r = ( $ RGB >> 16) & 0xFF;$ gtotal +$ g;このコード スニペットは、サーバーの RAM 使用量を理解し、初期、最終、およびピーク使用量を出力するのに役立ちます
1
2
4
5
6
7
8
9
10
11
12
13
14
15 1618
19
20
21
22
23
24
echo "初期値: " .memory_get_usage(). " bytes n" ;
/* 初期値: 361400 バイト
*/
// メモリを使い切ってみましょう
for ( $i = 0; $i
$array []= md5( $i )
}
// 配列
の半分を削除しましょう( $i = 0; $i
unset( $array [ $i ]);
}
echo "最終: " .memory_get_usage() " バイト n。 " ;
/* プリント
最終: 885912 バイト
*/
echo "ピーク: " .memory_get_peak_usage(). " バイト n" ;
/* プリント
ピーク: 13687072 バイト
* /
8. gzcompress() データを使用して圧縮する
長い文字列の場合、文字列は gzcompress() メソッドを通じて圧縮できます。解凍するには、gzuncompress()を使用します。コードは以下のように表示されます。
1
2
3
4
5
6
7
8
9
1011
12
13
14
15
16 17
19
2021
2223
2425
2627
28 2930
31
32
$string =
そのままにしておきます、
adipiscing エリート さて、そのエリートadipiscing です。
ヴェル・フュジアット前庭、無痛イプサム痛み
シットアメット、アディピシングエリート
プレティウム・ウラムコーパー
セド・ターピスラクタス
モリス・クーグ。しかし、私が恐れているのではなく、ラキニア
が宣伝しているのです。しかし、そうでなければ、柔らかく、柔らかく
で飾りましょう。しかし今は。また、宿題の時間にも間に合います。
ヘンドリット・シュレシケリ
を恐れる必要はありません、それは彼にとってはそうではないからです。予想通り、飲むためのオイスモド湖はありません、オイスモドの壺のメンバーたち。 ";
$compressed = gzcompress( $string );
echo "元のサイズ: " . strlen ( $string ). "n" ;
/*
を印刷します 元のサイズ: 800
* /
echo "圧縮サイズ: " . strlen ( $compressed )
/* 印刷*/
// 取得
$original = gzuncompress( $compressed ); 9.
2
3
4
5
7
8
9
10
1213
14
15
16
17
18 19 20 21 22 23 24 25 26 2830
31
32
33
MX 34 3536
37 38 39 39 40 41 42 4345
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
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 (
"biz" => "whois.neulevel.biz" ,
"com" => "whois.internic.net" ,
"us" => "whois.nic.us" ,
"coop" => "whois.nic.coop" 、
"info" => "whois.nic.info" 、
"name" =>
"net" => "whois.internic.net" 、"gov" => "whois.nic.gov" 、
"edu" => "whois.internic.net" 、
"mil " => "rs.internic.net" ,
"int" => "whois.iana.org" ,
"ac" => 「whois.nic.ac」、
「ae」 => "whois.uaenic.ae" 、
"at" => 「whois.ripe.net」 、
「au」 => "whois.aunic.net" 、
"be" => "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" ,
"de" => "whois.nic.de" 、
"fr" => "whois.nic.fr" 、
"hu" => "whois.nic.hu" ,
"ie" => "whois.domainregistry.ie" ,
"il" => "whois.isoc.org.il" ,
"in" => "whois.ncst.ernet.in" 、
"ir" => "whois.nic.ir" 、
"mc" => "whois.ripe.net" 、
"to" => "whois.tonic.to" 、
"tv" => "whois.tv" ,
"ru" => "whois.ripn.net" 、
"org" => 「whois.pir.org」 、
「エアロ」 => "whois.information.aero" ,
"nl" => 「whois.domain-registry.nl」
);
if (!isset( $servers [ $ext ])){
die ( 'エラー: 一致する NIC サーバーが見つかりません!' );
}
$nic_server = $servers [ $ext ];
$output = '' ;
// Whois サーバーに接続します:
if ( $conn = fsockopen ( $nic_server , 43)) {
fputs ( $conn , $domain . "rn" );
...}
else { die ( 'エラー: '. $ nic_server.' に接続できませんでした!! ');}
Return $ OUTPUT;
10. PHP エラー、エラー情報を電子メールで取得することもできます。以下のコードはこれを実現するのに役立ちます。
1
2
3 46
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
// カスタム エラー ハンドラー
function nettuts_error_handler( $number , $message , $file , $line , $vars ){
$email = "
" line
ファイル内: $file . $email .= ""
$headers = 'Content-type: text/html; charset=iso-8859-1 ' ;
// エラーを誰かにメールで送信...
error_log ( $email , 1 、 'you@youremail.com、$ headers);エラー(ユーザーの側)に応答する方法を決定するか、プロジェクト全体をエコーします。 ..
// 以下のコードは、エラーが
// 単なる通知である場合にのみ「終了」することを保証します。 if ( ( $number !== E_NOTICE) && ( $number < 2048) ) {
die ( "エラーが発生しました。後でもう一度お試しください。" );
// エラーを処理するにはカスタム関数を使用する必要があります。
set_error_handler( 'nettuts_error_handler' );
// エラーをトリガーします... (var が存在しません)
echo $somevarthatdoesnoexist ;