PHP學習總結(一)

來源:互聯網
上載者:User

標籤:bsp   匹配   php學習   大寫   轉換   plugin   abc   star   目錄   

》PHP 物件導向

  1. 使用parent訪問父類的構造方法(__construct)時一定要為當前類繼承要訪問的構造方法
  2. 類的構造方法(__construct)在執行個體化時直接被載入,靜態方法不需要執行個體化
  3. 靜態成員(static)存取方法:self::$abc
  4. 函數 spl_autoload_register(方法) 僅在使用不存在類時被觸發該方法,並傳入一個類名
  5. 執行個體化PDO類時如果當前檔案有命名空間(namespace),則輸出後會報錯該目錄下不存在PDO類,所以必須在PDO前加一個反斜線:\PDO
  6. 執行個體化一個類也可以不用變數來存放,如:new PDO()
  7. preg_match($pattern, $string); 返回匹配次數,參數一是Regex,二是匹配內容,此函數只匹配一次,匹配全部請用preg_match_all
  8. preg_replace(‘/\{\$([\w]+)\}/‘, " b ", ‘個{$dd}f仿{$dd}4s65f‘); 替換正則匹配到的內容並返回,參數一是運算式,二是替換內容,三是原文
  9. json_encode(); 函數中文亂碼(u265/ 類似情形)和部分符號被轉化解決方案:
foreach ($data as $key => $value) {  $data[$key] = urlencode($value);}
  1. 為每個值urlencode一下,返回時再urldecode(json_encode())就好了!
  2. namespace(命名空間)使用:一個檔案 app\ctrl\model.php,其命名空間應為 namespace App\Ctrl;
  3. 規範:命名空間每級首字母大寫、類名首字母大寫、常量全部大寫
  4. 》命名空間和use關鍵字
  5. 為類起一個命名空間:namespace plugin;
  6. 使用use訪問這個類:use plugin\nos;
  7. 注意:使用use訪問類時必須先把這個類引入(include)
  8. 推薦使用 spl_autoload_register() 自動為你載入不存在的類


》PHP 模板

1. 為什麼要使用模板?

  • 為了分離php和HTML代碼,使可維護性更高!

2. 為什麼要緩衝模板?

  • 為了提高載入速度,提高效能和資料庫承受能力!

3. 為什麼要把模板編譯成PHP檔案?

  • 模板中使用了一些自訂文法,如 {$name} , 為了使其正常顯示,需將它轉換為 <?php echo $name 輸出,將轉換後的檔案編譯成檔案,下次直接調用!

4. 如何將模板緩衝?

  • 將引入的編譯檔案放如緩衝器 ob_start() ,然後使用 ob_get_contents() 將複製到的內容用 file_put_contents() 儲存成快取檔案

 

PHP學習總結(一)

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.