首頁 >後端開發 >php教程 >php 十個超有用的PHP程式碼片段

php 十個超有用的PHP程式碼片段

WBOY
WBOY原創
2016-07-25 08:42:071042瀏覽
PHP,PHP

十個超有用的php程式碼片段

[PHP]代碼

  1. 1. 傳送簡訊
  2. 呼叫 TextMagic API。
  3. // 包含TextMagic PHP 函式庫
  4. require('textmagic-sms-api-php/TextMagicAPI.php');
  5. // 設定使用者名稱和密碼資訊
  6. $username = 'myusername';
  7. $password = 'mypassword';
  8. // 建立一個新的TM 實例
  9. $router = new TextMagicAPI(array(
  10. 'username' => ; $ username,
  11. 'password' => $password
  12. ));
  13. //發送簡訊到'999-123-4567'
  14. $result = $router- >send('醒醒醒吧!來! 依照IP找尋位址
  15. function detector_city($ip) {
  16. $default = 'UNKNOWN';
  17. if (!is_string($ip) || strlen($ip ) ) $ip = '8.8.8.8';
  18. $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)';
  19. $url = 'http://ipinfodb .com/ip_locator.php?ip=' 。 urlencode($ip);
  20. $ch = curl_init();
  21. $curl_opt = array(
  22. CURLOPT_FOLLOWLOCATION => 1,
  23. CURLOPT_HEADER => 0,CURLOPT_USERAGENT => $curlopt_useragent,
  24. CURLOPT_URL => $url,
  25. CURLOPT_TIMEOUT => 'http://' . 'HTTP_HOST'],
  26. ); $ch, $curl_opt);
  27. $content = curl_exec($ch);
  28. if (!is_null ($curl_info)) {
  29. $curl_info = curl_getinfo($ch);
  30. }
  31. curl_close($ch);
  32. if ( preg_match('{
  33. ;城市: ([^}i', $ content, $regs) ) {
  34. $city = $regs[1];
  35. }
  36. if ( preg_match( '{
  37. 州/省: ([^ }i', $content, $regs) ) {
  38. $state = $regs[1];
  39. }
  40. if( $city!='' && $state!='' ) {
  41. $location = $city . ','。 $state;
  42. 回傳$位置;
  43. }其他{
  44. 回傳$default;
  45. }
  46. }
  47. 3. 顯示網頁的原始碼
  48. $lines = file('http://google.com/');
  49. foreach ($lines as $line_num => $line) {
  50. //循環遍歷每一行並新增行號
  51. echo "Line #{$line_num} : " . htmlspecialchars($line) 。 “
    n”;
  52. }
  53. 4. 檢查伺服器是否使用HTTPS
  54. if ($_SERVER['HTTPS'] != "on") {
  55. echo "This is not HTTPS";
  56. }else{
  57. echo "This是HTTPS";
  58. }
  59. 5. 顯示Faceboo**絲數
  60. function fb_count( $facebook_name){
  61. // 範例: https://graph.facebook.com/digimantra
  62. $data = json_decode(file_get_contents("https: //graph.facebook.com/".$facebook_name));
  63. echo $data->likes;
  64. }
  65. 6. 偵測圖片的主要顏色
  66. $i = imagecreatefromjpeg("image.jpg");
  67. for ($x=0;$xfor ($y=0;$y$rgb = imagecolorat($i,$x,$y);
  68. $r = ($rgb > ;> 16) & 0xFF;
  69. $g = ($rgb >> & 0xFF;
  70. $b = $ rgb & 0xFF;
  71. $rTotal = $r;
  72. $gTotal = $g;
  73. $bTotal = $b;
  74. $total ;
  75. }
  76. }
  77. }
  78. $total ;
  79. }
  80. }
  81. }
  82. }
  83. $rAverage = round($rTotal/$total);
  84. $gAverage = round($gTotal/$total);
  85. $bAverage = round($bTotal/$total);
  86. 7. 取得記憶體資訊使用
  87. echo"Initial: " .memory_get_usage()." bytes n";
  88. /* prints
  89. Initial: 361400 bytes
  90. // http://www.baoluowanfang.com/
  91. // 讓我們用增加一些記憶體
  92. for ($i = 0; $i $array []= md5($i);
  93. }
  94. // 讓我們刪除陣列的一半
  95. for ($i = 0; $i unset($array [$i]);
  96. }
  97. echo"Final: ".memory_get_usage()." bytes n";
  98. /* prints
  99. Final: 885912 bytes
  100. */
  101. /* 列印
  102. 峰值:13687072 位元組
  103. */
  104. 8. 使用gzcompress() 來壓縮資料。 🎜> 明智的,醫生沒有價格,
  105. 之前沒有 ultricies elit。
  106. sit adipiscing elit 但是對不起,對不起,對不起,恐怕Lacinia eu nola 飲料
  107. id Euismod urna 成員";
  108. $compressed = gzcompress($string);
  109. echo "原始大小:"。strlen($string)."n";
  110. /* 列印
  111. 原始大小: 800
  112. */
  113. echo "壓縮後的大小: ". strlen( $compressed)."n";
  114. /* 列印
  115. 壓縮大小: 418
  116. */
  117. //取回
  118. $original = gzuncompress($compressed) ;
  119. 9. 使用PHP 做Whois手機
  120. function whois_query($domain) {
  121. //修復網域:
  122. $domain = strtolower(trim($domain));
  123. $域= preg_replace('/^http:///i', '', $domain);
  124. $domain = preg_replace('/^www./i', '', $domain);
  125. $ domain =explode('/', $domain);
  126. $domain = trim($domain[0]);
  127. //從網域分割TLD
  128. $_domain =explode(' .', $domain);
  129. $lst = count($_domain)-1;
  130. $ext = $_domain[$lst];
  131. // 您尋找資源和清單
  132. // 就像維基百科上的這些:
  133. //
  134. // http://de.wikipedia.org/wiki/Whois
  135. //
  136. $servers = array(
  137. "biz" = > "whois.neulevel.biz",
  138. "whois.internic.net",
  139. "whois.nic.us",
  140. "coop" =>"whois.nic .coop",
  141. "whois.nic.info",
  142. "whois.nic.name",
  143. "net " => "whois.internic.net",
  144. "gov" => "whois. nic.gov",
  145. "edu" => "whois.internic.net",
  146. " mil" => "rs.internic.net",
  147. "int" => "whois .iana.org",
  148. "ac" => "whois.nic.ac",
  149. "ae" => "whois.uaenic.ae",
  150. "at" => " whois.ripe .net",
  151. "au" =>; "whois.aunic.net",
  152. "be" =>; "whois.dns.be",
  153. "bg" =>; "whois. ripe.net",
  154. "br" =>; "whois.registro.br",
  155. "bz" =>; "whois.belizenic.bz",
  156. "ca" =>; "whois .cira.ca",
  157. "cc" =>; "whois.nic.cc",
  158. "ch" =>; "whois.nic.ch",
  159. "cl" =>; " whois.nic.cl",
  160. "cn" =>; "whois.cnnic.net.cn",
  161. "cz" =>; "whois.nic.cz",
  162. "de" = >; "whois.nic.de",
  163. "fr" =>; "whois.nic.fr",
  164. "hu" =>; "whois.nic.hu",
  165. "ie" =>; "whois.domainregistry.ie",
  166. "il" =>; "whois.isoc.org.il",
  167. "在"=>; "whois.ncst.ernet.in",
  168. "ir" =>; "whois.nic.ir",
  169. "mc" =>; "whois.ripe.net",
  170. "至" => "whois.tonic.to",
  171. "tv" =>; "whois.tv",
  172. "ru" =>; "whois.ripn.net",
  173. "org" =>; "whois.pir.org",
  174. "aero" =>; "whois.information.aero",
  175. "nl" =>; "whois.domain-registry.nl"
  176. );
  177. if (!isset($ servers[$ext])){
  178. die('錯誤:找不到符合的網卡伺服器! ') ;
  179. }
  180. $nic_server = $servers[$ext];
  181. $output = '';
  182. // 連接到whois 伺服器:
  183. if ($conn = fsockopen ($nic_server, 43)) {
  184. fputs($conn, $domain."rn");
  185. while(!feof($conn)) {
  186. $output . = fgets ($conn,128);
  187. }
  188. fclose($conn);
  189. }
  190. else { die('錯誤: 無法連線到' . $nic_server . '!'); }
  191. 回傳$output;
  192. }
  193. 10。 透過Email傳送PHP錯誤
  194. //我們自訂的錯誤處理程序
  195. function nettuts_error_handler($number, $message, $file, $line, $vars) {
  196. $email = "
  197. $line 行和檔案$file 中發生錯誤($number)。強>
  198. $訊息";
  199. $email .= "
    " 。 print_r($vars, 1) 。 "
    ";
  200. $headers = '內容類型:text/html;字元集=iso-8859-1' 。 "rn";
  201. // 透過電子郵件將錯誤發送給某人...
  202. error_log($email, 1, 'you@youremail.com', $headers);
  203. //確保您決定如何回應錯誤(在使用者方面)
  204. // 要麼回顯錯誤訊息,要麼終止整個專案。由你決定...
  205. // 下面的程式碼確保我們只在錯誤超過
  206. // 只是一個通知時「死亡」。
  207. if ( ($number !== E_NOTICE) && ($number die("出現錯誤,請稍後再試。");
  208. }
  209. }
  210. // 我們應該使用我們的自訂函數來處理錯誤。
  211. set_error_handler('nettuts_error_handler');
  212. // 觸發錯誤...(var 不存在)
  213. echo$somevarthatdoesnotexist;
複製碼🎜>
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn