W tym artykule poznasz 10 użytecznych bibliotek PHP, które mogą się okazać przydatne w Twoich przyszłych projektach. Nie przedłużając, przejdźmy do pierwszej z nich.
Rinvex Country
Rinvex Country pozwala na pobranie szczegółowych danych o krajach. Możesz pobrać stolicę, kontynent, państwa sąsiadujące, walutę i dziesiątki innych wartości.
$poland = country('pl');
$poland->getCapital(); // Warsaw
$poland->getDemonym(); // Polish
$poland->getTld(); // .pl
$poland->getContinent(); // Europe
$poland->getSubregion(); // Eastern Europe
$poland->getBorders(); // ( [0] => BLR [1] => CZE [2] => DEU [3] => LTU [4] => RUS [5] => SVK [6] => UKR )
Dompdf
Dompdf to generator PDF, który przetwarza strukturę HTML w plik .pdf. Poniższy kod wygeneruje PDF zawierający stronę A4 w orientacji horyzontalnej z napisem „Devcorner.pl”.
$dompdf = new Dompdf();
$dompdf->loadHtml('Devcorner.pl');
// Ustawienie rozmiaru i orientacji strony
$dompdf->setPaper('A4', 'landscape');
$dompdf->render();
$dompdf->stream();
Imagine
Imagine to biblioteka PHP, która pozwala na obróbkę plików graficznych. Umożliwia zmianę rozmiaru, przycinanie, filtry, rysowanie, edycję metadanych i wiele innych opcji.
$palette = new Imagine\Image\Palette\RGB();
$image = $imagine->create(new Box(400, 300), $palette->color('#000'));
$image->draw()->ellipse(new Point(200, 150), new Box(300, 225), $image->palette()->color('fff'));
$image->save('images/elipsa.jpg');
Instaphp
Instaphp znacznie upraszcza korzystanie z API Instagrama. Po uwierzytelnieniu możemy pobierać z tego serwisu różne dane – zdjęcia, użytkowników, komentarze itd.
$api = new Instaphp\Instaphp([
'client_id' => 'your client id',
'client_secret' => 'your client secret',
'redirect_uri' => 'http://somehost.foo/callback.php',
'scope' => 'comments+likes'
]);
$popular = $api->Media->Popular(['count' => 10]);
if (empty($popular->error)) {
foreach ($popular->data as $item) {
printf('<img src="%s">', $item['images']['low_resolution']['url']);
}
}
PHPExcel
PHPExcel to biblioteka umożliwiająca operacje na arkuszach kalkulacyjnych. Odczyt, aktualizacje i tworzenie nowych arkuszy nie stanowi żadnego problemu. Poniższy kod pobierze dane z dokument.xls i wyświetli je na stronie.
$inputFileName = 'arkusze/dokument.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);
Munee
Munee służy do optymalizacji plików. Umożliwia łączenie, kompilacje i optymalizację kodu (rozmiarowo).
<!-- Łączenie plików CSS w jeden -->
<link rel="stylesheet" href="/css/bootstrap.min.css, /css/demo.css">
<!-- Zmiana rozmiarów obrazka -->
<img src="/path/to/image.jpg?resize=width[100]height[100]exact[true]">
<!-- Kompilacja plików sass, less, coffee -->
<link rel="stylesheet" href="/css/demo.scss">
<!-- Optymalizacja kodu -->
<script src="/js/script.js?minify=true"></script>
Faker
Faker pozwala na generowanie tysięcy fałszywych danych. Sprawdzi się świetnie na przykład w testach serwisu lub generowaniu dokumentów XML.
$faker = Faker\Factory::create();
$name = $faker->name;
$address = $faker->address;
$text = $faker->text;
echo "Imię i nazwisko: ".$name."<br>".
"Adres: ".$address."<br>".
"Opis: ".$text."<br>";
/*
Imię i nazwisko: Carmine Erdman
Adres: 1402 Nayeli Lane Apt. 311 Lillafort, VT 27077
Opis: Quae velit quis illo quia aliquam.
*/
SEOstats
SEOstats umożliwia pobranie statystyk SEO ze źródeł takich jak Alexa, Google, Mozspace, SEMRush i kilku innych.
use \SEOstats\Services as SEOstats;
$url = 'http://devcorner.pl';
$seostats = new \SEOstats\SEOstats;
if ($seostats - > setUrl($url)) {
echo SEOstats\ Alexa::getGlobalRank();
echo SEOstats\ Google::getPageRank();
}
Botman
Botman to biblioteka PHP, która służy do tworzenia botów massenger. Działa z większością popularnych platform takich jak Facebook Massanger i Slack.
$botman->hears('Hello', function($bot) {
$bot->startConversation(new OnboardingConversation);
});
Swap
Swap znacznie ułatwia uzyskanie kursów wymiany walut. Umożliwia pobieranie kursów z kilku różnych źródeł, a nawet na wyświetlanie danych historycznych.
$swap = (new Builder())
->add('fixer')
->build();
// Pobierz ostatni kurs EUR/USD
$rate = $swap->latest('EUR/USD');
// 1.06415
$rate->getValue();
// 2017-02-13
$rate->getDate()->format('Y-m-d');
// Kurs EUR/USD sprzed 15 dni
$rate = $swap->historical('EUR/USD', (new \DateTime())->modify('-15 days'));
Oskar Masłek
Świetny artykuł, podoba mi się biblioteka Munee. Na pewno do przetestowania przy następnym projekcie! 🙂 Moze kolejny wpis bedzie o 10 bibliotekach jQuery ? 😊
Bartłomiej Mąkina
Dzięki! Biblioteki jQuery na pewno się pojawią niedługo 🙂