ホームページ バックエンド開発 PHPチュートリアル PHP代码片断(发送短信、根据IP查找地址、显示网页的源代码、检查服务器是否使用HTTPS、显示Faceboo*丝数量、检测图片的主要颜色、获取内存使用信息)

PHP代码片断(发送短信、根据IP查找地址、显示网页的源代码、检查服务器是否使用HTTPS、显示Faceboo*丝数量、检测图片的主要颜色、获取内存使用信息)

Jun 13, 2016 am 10:38 AM
error gt nic

PHP代码片段(发送短信、根据IP查找地址、显示网页的源代码、检查服务器是否使用HTTPS、显示Faceboo**丝数量、检测图片的主要颜色、获取内存使用信息)

1. 发送短信调用 TextMagic API。// Include the TextMagic PHP librequire('textmagic-sms-api-php/TextMagicAPI.php');// Set the username and password information$username = 'myusername';$password = 'mypassword';// Create a new instance of TM$router = new TextMagicAPI(array('username' => $username,'password' => $password));// Send a text message to '999-123-4567'$result = $router->send('Wake up!', array(9991234567), true);// result: Result is: Array ( [messages] => Array ( [19896128] => 9991234567 ) [sent_text] => Wake up! [parts_count] => 1 )2. 根据IP查找地址function detect_city($ip) {$default = 'UNKNOWN';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 => 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('{<li>City : ([^<]*)</li>}i', $content, $regs) ) {$city = $regs[1];}if ( preg_match('{<li>State/Province : ([^<]*)</li>}i', $content, $regs) ) {$state = $regs[1];}if( $city!='' && $state!='' ){$location = $city . ', ' . $state;return$location;}else{return$default;}}3. 显示网页的源代码<?php // display source code$lines = file('http://google.com/');foreach ($lines as $line_num => $line) {// loop thru each line and prepend line numbersecho "Line #<b>{$line_num}</b> : " . htmlspecialchars($line) . "<br>\n";}4. 检查服务器是否使用HTTPSif ($_SERVER['HTTPS'] != "on") {echo "This is not HTTPS";}else{echo "This is HTTPS";}5. 显示Faceboo**丝数量function fb_fan_count($facebook_name){// Example: 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<imagesx($i);$x++) {for ($y=0;$y<imagesy($i);$y++) {$rgb = imagecolorat($i,$x,$y);$r = ($rgb >> 16) & 0xFF;$g = ($rgb >> & 0xFF;$b = $rgb & 0xFF;$rTotal += $r;$gTotal += $g;$bTotal += $b;$total++;}}$rAverage = round($rTotal/$total);$gAverage = round($gTotal/$total);$bAverage = round($bTotal/$total);7. 获取内存使用信息echo"Initial: ".memory_get_usage()." bytes \n";/* printsInitial: 361400 bytes*/// http://www.baoluowanxiang.com/// let's use up some memoryfor ($i = 0; $i < 100000; $i++) {$array []= md5($i);}// let's remove half of the arrayfor ($i = 0; $i < 100000; $i++) {unset($array[$i]);}echo"Final: ".memory_get_usage()." bytes \n";/* printsFinal: 885912 bytes*/echo"Peak: ".memory_get_peak_usage()." bytes \n";/* printsPeak: 13687072 bytes*/8. 使用 gzcompress() 压缩数据$string ="Lorem ipsum dolor sit amet, consecteturadipiscing elit. Nunc ut elit id mi ultriciesadipiscing. Nulla facilisi. Praesent pulvinar,sapien vel feugiat vestibulum, nulla dui pretium orci,non ultricies elit lacus quis ante. Lorem ipsum dolorsit amet, consectetur adipiscing elit. Aliquampretium ullamcorper urna quis iaculis. Etiam ac massased turpis tempor luctus. Curabitur sed nibh eu elitmollis congue. Praesent ipsum diam, consectetur vitaeornare a, aliquam a nunc. In id magna pellentesquetellus posuere adipiscing. Sed non mi metus, at laciniaaugue. Sed magna nisi, ornare in mollis in, mollissed nunc. Etiam at justo in leo congue mollis.Nullam in neque eget metus hendrerit scelerisqueeu non enim. Ut malesuada lacus eu nulla bibendumid euismod urna sodales. ";$compressed = gzcompress($string);echo "Original size: ". strlen($string)."\n";/* printsOriginal size: 800*/echo "Compressed size: ". strlen($compressed)."\n";/* printsCompressed size: 418*/// getting it back$original = gzuncompress($compressed);9. 使用PHP做Whois检查function whois_query($domain) {// fix the domain name:$domain = strtolower(trim($domain));$domain = preg_replace('/^http:\/\//i', '', $domain);$domain = preg_replace('/^www\./i', '', $domain);$domain = explode('/', $domain);$domain = trim($domain[0]);// split the TLD from domain name$_domain = explode('.', $domain);$lst = count($_domain)-1;$ext = $_domain[$lst];// You find resources and lists// like these on wikipedia://// 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" => "whois.nic.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","aero" => "whois.information.aero","nl" => "whois.domain-registry.nl");if (!isset($servers[$ext])){die('Error: No matching nic server found!');}$nic_server = $servers[$ext];$output = '';// connect to whois server:if ($conn = fsockopen ($nic_server, 43)) {fputs($conn, $domain."\r\n");while(!feof($conn)) {$output .= fgets($conn,128);}fclose($conn);}else { die('Error: Could not connect to ' . $nic_server . '!'); }return $output;}10. 通过Email发送PHP错误<?php// Our custom error handlerfunction nettuts_error_handler($number, $message, $file, $line, $vars){$email = "<p>An error ($number) occurred on line<strong>$line</strong> and in the <strong>file: $file.</strong><p> $message </p>";$email .= "<pre class="brush:php;toolbar:false">" . print_r($vars, 1) . "
ログイン後にコピー
";$headers = 'Content-type: text/html; charset=iso-8859-1' . "\r\n";// Email the error to someone...error_log($email, 1, [email protected]', $headers);// Make sure that you decide how to respond to errors (on the user's side)// Either echo an error message, or kill the entire project. Up to you...// The code below ensures that we only "die" if the error was more than// just a NOTICE.if ( ($number !== E_NOTICE) && ($number < 2048) ) {die("There was an error. Please try again later.");}}// We should use our custom function to handle errors.set_error_handler('nettuts_error_handler');// Trigger an error... (var doesn't exist)echo$somevarthatdoesnotexist;

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Huawei GT3 ProとGT4の違いは何ですか? Huawei GT3 ProとGT4の違いは何ですか? Dec 29, 2023 pm 02:27 PM

多くのユーザーはスマートウォッチを選ぶときにファーウェイブランドを選択しますが、その中でもファーウェイ GT3pro と GT4 は非常に人気のある選択肢であり、多くのユーザーはファーウェイ GT3pro と GT4 の違いに興味を持っています。 Huawei GT3pro と GT4 の違いは何ですか? 1. 外観 GT4: 46mm と 41mm、材質はガラスミラー + ステンレススチールボディ + 高解像度ファイバーバックシェルです。 GT3pro: 46.6mm および 42.9mm、材質はサファイアガラス + チタンボディ/セラミックボディ + セラミックバックシェルです。 2. 健全な GT4: 最新の Huawei Truseen5.5+ アルゴリズムを使用すると、結果はより正確になります。 GT3pro: ECG 心電図と血管と安全性を追加

スタンバイ時の接続ステータス: 切断、理由: NIC 準拠 スタンバイ時の接続ステータス: 切断、理由: NIC 準拠 Feb 19, 2024 pm 03:15 PM

「イベント ログ メッセージの接続ステータスには、スタンバイ: NIC 準拠により切断されました。というメッセージが表示されます。これは、システムがスタンバイ モードで、ネットワーク インターフェイス カード (NIC) が切断されていることを意味します。これは通常、ネットワークの問題ですが、他の問題が発生する可能性もあります。 「スタンバイ接続が切断される原因は何ですか?」 スタンバイ接続が切断される原因は何ですか? NIC に準拠していますか? Windows イベント ビューアに「ConnectivityStatusinStandby:DisConnected,Reason:NICCompliance」メッセージが表示された場合は、NIC またはネットワーク インターフェイス コントローラーに問題がある可能性があることを示しています。この状況は通常、

PHP 致命的エラーの解決策: 未定義メソッド PDO::prepare() の呼び出し PHP 致命的エラーの解決策: 未定義メソッド PDO::prepare() の呼び出し Jun 22, 2023 pm 06:40 PM

PHP は、長い間使用されている人気のある Web 開発言語です。 PHP に統合された PDO (PHP Data Object) クラスは、Web アプリケーションの開発中にデータベースと対話する一般的な方法です。ただし、一部の PHP 開発者がよく遭遇する問題は、PDO クラスを使用してデータベースと対話するときに、次のようなエラーが表示されることです。

Vue アプリケーションで axios を使用しているときに「Uncaught (in Promise) Error: Request failed with status code 500」が発生した場合はどうすればよいですか? Vue アプリケーションで axios を使用しているときに「Uncaught (in Promise) Error: Request failed with status code 500」が発生した場合はどうすればよいですか? Jun 24, 2023 pm 05:33 PM

Vue アプリケーションで axios を使用するのは非常に一般的です。axios は、ブラウザーと Node.js で使用できる Promise ベースの HTTP クライアントです。開発プロセス中に、「Uncaught(inpromise)Error: Requestfailedwithstatuscode500」というエラー メッセージが表示されることがありますが、開発者にとって、このエラー メッセージは理解および解決が難しい場合があります。この記事ではこれについて説明します

0271: リアルタイムクロックエラーによりコンピュータの電源が入らない場合はどうすればよいですか? 0271: リアルタイムクロックエラーによりコンピュータの電源が入らない場合はどうすればよいですか? Mar 13, 2023 am 11:30 AM

起動できない「0271: リアルタイム クロック エラー」の解決策: 1. F1 キーを押し、表示されるインターフェイスでオプション バーを 3 番目の項目「日付/時刻」に移動します; 2. システム時刻を手動で現在の時刻に変更します。 1 回; 3. F10 キーを押し、ポップアップ ダイアログ ボックスで [はい] を選択します; 4. ノートブックを再度開いて、通常どおり起動します。

C++ コードの「エラー: 不完全な型は許可されません」の問題を解決する C++ コードの「エラー: 不完全な型は許可されません」の問題を解決する Aug 26, 2023 pm 08:54 PM

C++ コードの「error:incompletetypeisnotallowed」問題を解決します。C++ プログラミング プロセス中に、コンパイル エラーが発生することがあります。一般的なエラーの 1 つは、「error:incompletetypeisnotallowed」です。このエラーは通常、不完全な型を操作することによって発生します。この記事では、このエラーの原因を説明し、いくつかの解決策を提供します。まず、私は

C++ コードの「エラー: 'datatype' の前に初期化子が必要です」問題を解決する C++ コードの「エラー: 'datatype' の前に初期化子が必要です」問題を解決する Aug 25, 2023 pm 01:24 PM

C++ コードの「error:expectedinitializerbefore'datatype'」問題を解決します。C++ プログラミングでは、コードを作成するときにコンパイル エラーが発生することがあります。一般的なエラーの 1 つは、「error:expectedinitializerbefore'datatype'」です。このエラーは通常、変数宣言または関数定義で発生し、プログラムが正しくコンパイルされなかったり、

PHP 警告の解決方法: fopen(): ストリームを開けませんでした: そのようなファイルまたはディレクトリはありません PHP 警告の解決方法: fopen(): ストリームを開けませんでした: そのようなファイルまたはディレクトリはありません Aug 19, 2023 am 10:44 AM

PHPWarning:fopen():failedtoopenstream:No suchfileordirectory PHP 開発を使用する過程で、ファイル操作の問題がよく発生します。その 1 つが「PHPWarning:fopen():failedtoopenstream:No suchfileordirectory」です。

See all articles