<address id="ousso"></address>
<form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
  1. php語言

    超級9個PHP代碼片段

    時間:2025-06-03 18:40:56 php語言 我要投稿
    • 相關推薦

    超級實用的9個PHP代碼片段

      在開發網站、app或博客時,代碼片段可以真正地為你節省時間。今天,讓我們一起來分享小編收集整理好的這些超級有用的PHP代碼片段。一起來看一看吧!

      1.創建數據URI

      數據URI在嵌入圖像到HTML / CSS / JS中以節省HTTP請求時非常有用,并且可以減少網站的加載時間。下面的函數可以創建基于$file的數據URI。

      function data_uri($file, $mime) {

      $contents=file_get_contents($file);

      $base64=base64_encode($contents);

      echo "data:$mime;base64,$base64";

      }

      2.合并JavaScript和CSS文件

      另一個可以盡量減少HTTP請求和節省頁面加載時間的好建議是:合并你的CSS和JS文件。雖然我更建議大家使用專用插件(例如minify),但使用PHP來合并文件也非常容易。我們來看一下:

      function combine_my_files($array_files, $destination_dir, $dest_file_name){

      if(!is_file($destination_dir . $dest_file_name)){ //continue only if file doesn't exist

      $content = "";

      foreach ($array_files as $file){ //loop through array list

      $content .= file_get_contents($file); //read each file

      }

      //You can use some sort of minifier here

      //minify_my_js($content);

      $new_file = fopen($destination_dir . $dest_file_name, "w" ); //open file for writing

      fwrite($new_file , $content); //write to destination

      fclose($new_file);

      return ''; //output combined file

      }else{

      //use stored file

      return ''; //output combine file

      }

      }

      并且,用法是這樣的:

      $files = array(

      'http://example/files/sample_js_file_1.js',

      'http://example/files/sample_js_file_2.js',

      'http://example/files/beautyquote_functions.js',

      'http://example/files/crop.js',

      'http://example/files/jquery.autosize.min.js',

      );

      echo combine_my_files($files, 'minified_files/', md5("my_mini_file").".js");

      3.查看你的電子郵件是否已讀

      當發送電子郵件時,你會希望知道你的郵件是否已讀。這里有一個非常有趣的代碼片段,它可以記錄閱讀你郵件的IP地址,以及實際的日期和時間。

      error_reporting(0);

      Header("Content-Type: image/jpeg");

      //Get IP

      if (!empty($_SERVER['HTTP_CLIENT_IP']))

      {

      $ip=$_SERVER['HTTP_CLIENT_IP'];

      }

      elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR']))

      {

      $ip=$_SERVER['HTTP_X_FORWARDED_FOR'];

      }

      else

      {

      $ip=$_SERVER['REMOTE_ADDR'];

      }

      //Time

      $actual_time = time();

      $actual_day = date('Y.m.d', $actual_time);

      $actual_day_chart = date('d/m/y', $actual_time);

      $actual_hour = date('H:i:s', $actual_time);

      //GET Browser

      $browser = $_SERVER['HTTP_USER_AGENT'];

      //LOG

      $myFile = "log.txt";

      $fh = fopen($myFile, 'a+');

      $stringData = $actual_day . ' ' . $actual_hour . ' ' . $ip . ' ' . $browser . ' ' . " ";

      fwrite($fh, $stringData);

      fclose($fh);

      //Generate Image (Es. dimesion is 1x1)

      $newimage = ImageCreate(1,1);

      $grigio = ImageColorAllocate($newimage,255,255,255);

      ImageJPEG($newimage);

      ImageDestroy($newimage);

      ?>

      4.從網頁提取關鍵詞

      正如這小標題所說的那樣:這個代碼片段能讓你輕易地從網頁中提取元關鍵詞。

      $meta = get_meta_tags('http://www.emoticode.net/');

      $keywords = $meta['keywords'];

      // Split keywords

      $keywords = explode(',', $keywords );

      // Trim them

      $keywords = array_map( 'trim', $keywords );

      // Remove empty values

      $keywords = array_filter( $keywords );

      print_r( $keywords );

      5.查找頁面上的所有鏈接

      使用DOM,你可以輕松地抓取來網頁上的所有鏈接。這里有一個工作示例:

      $html = file_get_contents('http://www.example.com');

      $dom = new DOMDocument();

      @$dom->loadHTML($html);

      // grab all the on the page

      $xpath = new DOMXPath($dom);

      $hrefs = $xpath->evaluate("/html/body//a");

      for ($i = 0; $i < $hrefs->length; $i++) {

      $href = $hrefs->item($i);

      $url = $href->getAttribute('href');

      echo $url.'

      ';

      }

      6.自動轉換URL為可點擊的超鏈接

      在WordPress中,如果你想在字符串中自動轉換所有的URL成可點擊的超鏈接,那么使用內置函數make_clickable()可以讓你心想事成。如果你需要在WordPress之外這么做,那么你可以在wp-includes/formatting.php參考該函數的源代碼:

      function _make_url_clickable_cb($matches) {

      $ret = '';

      $url = $matches[2];

      if ( empty($url) )

      return $matches[0];

      // removed trailing [.,;:] from URL

      if ( in_array(substr($url, -1), array('.', ',', ';', ':')) === true ) {

      $ret = substr($url, -1);

      $url = substr($url, 0, strlen($url)-1);

      }

      return $matches[1] . "$url" . $ret;

      }

      function _make_web_ftp_clickable_cb($matches) {

      $ret = '';

      $dest = $matches[2];

      $dest = 'http://' . $dest;

      if ( empty($dest) )

      return $matches[0];

      // removed trailing [,;:] from URL

      if ( in_array(substr($dest, -1), array('.', ',', ';', ':')) === true ) {

      $ret = substr($dest, -1);

      $dest = substr($dest, 0, strlen($dest)-1);

      }

      return $matches[1] . "$dest" . $ret;

      }

      function _make_email_clickable_cb($matches) {

      $email = $matches[2] . '@' . $matches[3];

      return $matches[1] . "$email";

      }

      function make_clickable($ret) {

      $ret = ' ' . $ret;

      // in testing, using arrays here was found to be faster

      $ret = preg_replace_callback('#([s>])([w]+?://[wx80-xff#$%&~/.-;:=,?@[]+]*)#is', '_make_url_clickable_cb', $ret);

      $ret = preg_replace_callback('#([s>])((www|ftp).[wx80-xff#$%&~/.-;:=,?@[]+]*)#is', '_make_web_ftp_clickable_cb', $ret);

      $ret = preg_replace_callback('#([s>])([.0-9a-z_+-]+)@(([0-9a-z-]+.)+[0-9a-z]{2,})#i', '_make_email_clickable_cb', $ret);

      // this one is not in an array because we need it to run last, for cleanup of accidental links within links

      $ret = preg_replace("#(]+?>|>))]+?>([^>]+?)#i", "$1$3", $ret);

      $ret = trim($ret);

      return $ret;

      }

      7.在你的服務器上下載并保存遠程圖像

      在遠程服務器上下載一個圖像,并將其保存在自己的服務器上,在建立網站時很有用,而且這也很容易做到。下面的這兩行代碼就能為你辦到。

      $image = file_get_contents('http://www.url.com/image.jpg');

      file_put_contents('/images/image.jpg', $image); //Where to save the image

      8.檢測瀏覽器語言

      如果你的網站使用多種語言,那么檢測瀏覽器語言,并將這種語言作為默認語言會很有用。下面的代碼將返回客戶瀏覽器使用的語言。

      function get_client_language($availableLanguages, $default='en'){

      if (isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])) {

      $langs=explode(',',$_SERVER['HTTP_ACCEPT_LANGUAGE']);

      foreach ($langs as $value){

      $choice=substr($value,0,2);

      if(in_array($choice, $availableLanguages)){

      return $choice;

      }

      }

      }

      return $default;

      }

      9.全文顯示臉x書的粉絲數量

      如果你的網站或博客有一個臉x書的頁面,那么你可能想要顯示你有多少個粉絲。這個代碼片段可以幫助你獲取臉x書的粉絲數量。不要忘記在第二行添加你的頁面ID。頁面ID可以在地址http://臉x書.com/yourpagename/info找到。

      $page_id = "302807633129400";

      $xml = @simplexml_load_file("http://api.臉x書.com/restserver.php?method=臉x書.fql.query&query=SELECTfan_countFROMpageWHEREpage_id=".$page_id."") or die ("a lot");

      $fans = $xml->page->fan_count;

      echo $fans;

      ?>

    【超級9個PHP代碼片段】相關文章:

    實用的9個PHP代碼片段08-09

    5個超級有用的php片段06-05

    PHP調用的C代碼08-05

    PHP代碼優化技巧05-29

    PHP代碼運行流程08-14

    php語言字典代碼06-08

    php分頁類代碼04-30

    PHP實用的代碼實例08-12

    PHP代碼如何規范02-13

    <address id="ousso"></address>
    <form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
    1. 日日做夜狠狠爱欧美黑人