php社群已從中心化的框架進化為分布式生態系統,分布式生態系統中元件效率高、互操作性好、作用單一。php-fig
php-fig(php framework interop group)由一些php框架代表組成,聚在一起「討論專案之間的共性,尋找可以合作的方式」。他們的使命是實現框架的互操作性,通過介面、自動載入機制、標準風格,讓框架相互合作。
psr
psr(php standards recommendation)是php推薦標準的簡稱,由php-fig制定。規範名稱以psr-開頭,後跟數字。php-fig發布的推薦規範
編寫符合社群標準的php**,必須滿足以下要求
推薦monolog/monolog
元件(
monolog 元件完全實現 psr-3 介面,自定義訊息格式化和處理程式擴充套件。
<?php
use monolog\logger;
use monolog\handler\streamhandler;
// 初始化日誌記錄器
$log->pushhandler(new streamhandler('logs/development.log'), logger::debug);
$log->pushhandler(new streamhandler('logs/production'), logger::warning);
// 使用日誌記錄器
$log->debug('this is a development debug message');
$log->warning('this is a production warning message');
自動載入器策略指在執行時按需查詢php類、介面、形狀,並將其載入php直譯器。
符合此規範的元件包括:symfony、doctrine、monolog、twig、guzzle、swiftmailer、phpunit、carbon...
psr-4策略用於在執行時查詢並載入php類、介面、形狀,它不要求改變**的實現方式,只建議如何使用檔案系統目錄結構和php命名空間組織**。
psr-4自動載入器策略依賴php命名空間和檔案系統目錄結構查詢並載入php類、介面、形狀。
psr-4 精髓是把命名空間的字首和檔案系統中的目錄對應起來,命名空間字首可是頂層命名空間,也可是頂層命名空間加上任意子命名空間,相當靈活。
psr-4 自動載入實現**
<?php
// 使用spl註冊自動載入函式
spl_autoload_register(function($class)
// 類去除命名空間字首後的類名
$relative_class = substr($class, strlen($prefix));
// 將命名空間轉換為目錄
$filename = str_replace('\\', '/', $relative_class);
// 判斷檔案是否存在並載入
$file = $basedir.$filename.'.php';
if(file_exists($file))
});
PHP推薦標準 PSR
psr是php standards recommendation的簡稱。psr 1 基本的 風格 php標籤 必須把php 放在或標籤中。不得使用其他php標籤語法。編碼 所有php檔案都必須使用utf 8字符集編碼,而且不能有位元組順序標記 目的 乙個php檔案可以定義符號 類 性狀 函式和常量等...
推薦系統評價標準
如果乙個智慧型系統的智慧型程度很弱的話,對於工業界來說,完全可以不用智慧型系統。假象你推薦給使用者的東西效果很差的話,還不如推薦給使用者一些比較hot的東西。那麼,如何來評價乙個推薦系統的效果呢?1 accuracy 準確性是乙個可以量化的指標,在學術界,評價乙個推薦系統最重要的指標就是看看你 的分...
推薦系統判定標準
使用者滿意度 描述使用者對推薦結果的滿意程度,這是推薦系統最重要的指標。一般通過對使用者進行問卷或者監測使用者線上行為資料獲得。準確度 描述推薦系統 使用者行為的能力。一般通過離線資料集上演算法給出的推薦列表和使用者行為的重合率來計算。重合率越大則準確率越高。覆蓋率 描述推薦系統對物品長尾的發掘能力...