20 کتابخانه عالی برای تابستان 1395 - قسمت اول -آکا

آکاایران: اولین بار php در سال 1995 ارائه شده و تا به الان مخاطبان خیلی خیلی زیادی داره و همچنین کسانی که با اون کار میکنن هم خیلی زیاد هستند به همین خاطر هر روزه کتابخانه های زیادی برای این زبان دوست داشتنی آماده میشه این حرف رو خیلی راحت میتونید از روی وبسایت Github ببینید و شما دوستان میتونید از این کتابخونه ها در پروژه هاتون خیلی راحت استفاده کنید . 

به گزارش آکاایران: در این پست قصد دارم 20 کتابخانه عالی رو به شما معرفی کنم تا در صورت نیاز اون ها رو در کارهای خودتون مورد استفاده قرار بدید . 

,
         20 کتابخانه عالی برای تابستان 1395 - قسمت اول,
         20 کتابخانه عالی php,
         کتابخانه های php,[categoriy]

آکاایران: 20 کتابخانه عالی برای تابستان 1395

Monolog

با استفاده از کتابخانه Monolog میتونید یک سیستم پیشرفته Log برای خودتون ایجاد کنید و از انواع وب سرویس ها ، دیتابیس ها ، فایل ها به سادگی لاگ بگیرید . 50 ابزار و فریمورک مختلف بدلیل ساختار هماهنگ این کتابخانه میتوانند به سادگی از آن در اپلیکیشن های خودشون استفاده کنند . 

use MonologLogger;
use MonologHandlerStreamHandler;

// create a log channel
$log = new Logger("name");
$log->pushHandler(new StreamHandler("path/to/your.log", Logger::WARNING));

// add records to the log
$log->warning("Foo");
$log->error("Bar");

PHPExcel

این کلاس به سادگی به توسعه دهنده ها اجازه میده تا sheet های Excel رو در برنامه خودشون ویرایش کنند . این کتابخانه قادر به خواندن مستندات sheet در فرمت های مختلف از نظیر xls. یا xlsx. و.ods و CSV و چندتای دیگه هست . 

include "PHPExcel/IOFactory.php";

$inputFileName = "./sampleData/example1.xls";

echo "Loading file ",pathinfo($inputFileName,PATHINFO_BASENAME)," using IOFactory";
$objPHPExcel = PHPExcel_IOFactory::load($inputFileName);

$sheetData = $objPHPExcel->getActiveSheet()->toArray(null,true,true,true);
var_dump($sheetData);

PHP-ML

این کتابخانه جالب برای آزمایش با یادگیری ماشین است ، PHP-ML یک Api ساده برای یادگیری و روبات خود و انجام پیش بینی های مبتنی بر داده های ورودی به شما می دهد . این کتابخانه شامل انواع الگوریتم های مختلف برای تشخیص الگو و محاسبات آمار پیچیده است.

use PhpmlClassificationKNearestNeighbors;

$samples = [[1, 3], [1, 4], [2, 4], [3, 1], [4, 1], [4, 2]];
$labels = ["a", "a", "a", "b", "b", "b"];

$classifier = new KNearestNeighbors();
$classifier->train($samples, $labels);

$classifier->predict([3, 2]);
// returns "b" as the [3, 2] point is closer to the points in group b

Opauth

این کتابخانه به شما اجازه میده تا سیستم های احراز هویت بر اساس شبکه های اجتماعی یا سیستم های دیگر بسازید . شبکه های اجتماعی و سیستم های با نام های بزرگ : گوگل ، فیس بوک ، توئیتر ، گیت هاب ، اینستاگرام ، لینکدین .Opauth فریمورک های زیادی از php رو پشتیبانی میکنه و شما خیلی ساده میتونید از اون در فریمورکهای مختلف استفاده کنید . 

"Strategy" => array(  
    // Define strategies here.

    "Facebook" => array(
        "app_id" => "YOUR APP ID",
        "app_secret" => "YOUR APP SECRET"
    ),
);

 Whoops

کتابخانه Whoops یک تجربه عالی برای دیباگ کردن و نمایش ارور ها و جزئیات آن در PHP به شما میدهد . این کتابخانه یک صفحه ارور به شما میدهد که شما میتوانید همه خطاها را با رنگ های مختلف سایزهای مختلف به نسبت نوع کد در آن مشاهده کنید . برای ساخت این کتابخانه از فریمورک لاراول الهام گرفته شده است . 

$whoops = new WhoopsRun;
$whoops->pushHandler(new WhoopsHandlerPrettyPageHandler);
$whoops->register();
// That"s it!

FastCache

این یک کتابخانه است که به شما کمک میکند تا محتوای را که میخواید در سریعترین زمان کش کنید و بجای دریافت از دیتابیس تا زمانی کش وجود داشته باشد از اون دریافت کند . معمولا اطلاعات اگر تا مدت زمانی کش شوند زمانی که کاربر قصد دسترسی به ان اطلاعات را داشته باشد سریعتر میتواند نسبت به دیتابیس به آن اطلاعات دسترسی پیدا کند . 

use phpFastCacheCacheManager;

$config = array(
    "storage"   =>  "files",
    "path"      =>  "/your_cache_path/dir/",
);
CacheManager::setup($config);

// Try to get from Cache first with an Identity Keyword
$products = CacheManager::get("products");

// If not available get from DB and save in Cache.
if(is_null($products)) {
    $products = "DB SELECT QUERY";
    // Cache your $products for 600 seconds.
    CacheManager::set($cache_keyword, $products,600);
}

Guzzle

Guzzle یکی از بهترین کتابخانه ایست که برای کار با HTTP وجود دارد . اون میتونه تقریبا هر نوع درخواستی از HTTP رو به سادگی انجام بده مثل درخواست های  همزمان و ناهمزمان . HTTP کوکی ها ، جریان ارسال و دریافت ها بزرگ اطلاعات برای آپلود ، کار گردن با کتابخانه Guzzle بسیار ساده است و این کتابخانه با داشتن مستندات و توضیحات و مثال های زیاد از متدها و بخش مختلف خود به سادگی کمک میکند تا از آن استفاده کنید . 

$client = new GuzzleHttpClient();
$res = $client->request("GET", "https://api.github.com/user", [
    "auth" => ["user", "pass"]
]);
echo $res->getStatusCode();
// "200"
echo $res->getHeader("content-type");
// "application/json; charset=utf8"
echo $res->getBody();
// {"type":"User"..."

// Send an asynchronous request.
$request = new GuzzleHttpPsr7Request("GET", "http://httpbin.org");
$promise = $client->sendAsync($request)->then(function ($response) {
    echo "I completed! " . $response->getBody();
});
$promise->wait();

Munee

Munee  دارای تعداد زیادی از ترفندها در استین خود است برای مثال ترکیب چند فایل CSS یا چند فایل جاوا اسکریپت یا تغییر اندازه تصاویر همچنین کوچک سازی فایل ها یا فشرده سازی بر اساس Gzip و کارهای زیاد دیگه که در مستندات آن میتوانید بخوانید ، تمام فرآیندهای که ذکر کردیم هر دو سمت سرور و سمت کلاینت برای عملکرد مطلوب ذخیره سازی میتواند انجام شود . 

require "vendor/autoload.php";
echo MuneeDispatcher::run(new MuneeRequest());
<!-- Combining two CSS files into one. -->
<link rel="stylesheet" href="/css/bootstrap.min.css, /css/demo.css">

<!-- Resizing image -->
<img src="http://roocket.ir//path/to/image.jpg?rexsize=xwidt[100]xheight[100]exact[true]">

<!-- Files that need preprocessing are compiled automatically -->
<link rel="stylesheet" href="/css/demo.scss">

<!-- Minifying code -->
<script src="http://roocket.ir//js/script.js?minify=true"></script>

Twig

این یک کتابخانه و یک موتور قالب ساز است که با استفاده از ان میتوانید کدهای کوتاه تر و با خوانای بالاتری بنویسید . این کتابخانه به شما هر امکان پیشرفته ای که که برای موتور های قالب ساز وجود دارد مثل کار با شروط ، حلفه ، متغیرها و غیره رو به شما پیشنهاد میدهد . 

// Template HTML

<p>Welcome {{ name }}!</p>


// Rendering

require_once "/path/to/lib/Twig/Autoloader.php";
Twig_Autoloader::register();

$loader = new Twig_Loader_Filesystem("/path/to/templates");
$twig = new Twig_Environment($loader, array(
    "cache" => "/path/to/compilation_cache",
));

echo $twig->render("index.html", array("name" => "George"));

Goutte

Goutte یک خزنده وب است که با استفاده از ان میتوانید هر صفحه ای HTML یا XML را دریافت کنید و در ان جستجو کنید و المان های مورد نظر خود رو پیدا کنید . این کتابخانه با ارسال یک درخواست و دریافت اطلاعات از ان به شما اجازه میده در ان بخزین و هر نوع اطلاعاتی رو که میخواید دریافت کنید . 

use GoutteClient;
$client = new Client();

// Go to the symfony.com website
$crawler = $client->request("GET", "http://www.symfony.com/blog/");

// Click on the links
$link = $crawler->selectLink("Security Advisories")->link();
$crawler = $client->click($link);

// Extract data
$crawler->filter("h2 > a")->each(function ($node) {
    print $node->text()."
";
});

10 کتابخانه دیگر در پست دوم ارائه میشود . امیدوارم این کتابخانه ها مورد استفاده شما قرار بگیرند . 

منبع :

  • اشتراک
  • گزارش تخلف
  • 0 محبوب

اخبار اکاایران