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://www.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 ? 😊