Hei Maailma!
Tässä tutoriaalissa opit asentamaan Piken käyttäen composeria.
Sisällysluettelo
Johdanto
Nämä tutoriaalit on kirjoitettu web/front-kehittäjille, joilla on jo toimiva php-devausympäristö käytössään. Devausympäristöstäsi tulisi löytyä:
- XAMPP, WAMP, MAMP tai vastaava jossa php-7.3 tai uudempi
- composer
Step 1. Asenna Pike
Luo projektille oma kansio devausympäristösi serverin public_html/htdocs -kansioon, ja anna sille nimeksi tut1-hello-pike
. Luo sinne uusi uusi tiedosto composer.json
, ja kirjoita sen sisällöksi:
{
"name": "me/my-app",
"require": {
"ut4/pike": "0.9.0"
}
}
Avaa komentokehote, ja siirry sillä edellä luotuun kansion cd /<publicHtmlKansio>/tut1-hello-pike/
. Asenna projekti ajamalla komento composer install
(tai php /jokin/polku/composer.phar install
). Projektikansioon pitäisi ilmestyä vendor
-kansio, ja sen sisälle Pike ja kaikki sen riippuvuudet.
Step 2. Savutestaa
Verifioi edellinen steppi luomalla uusi tiedosto /<publicHtmlKansio>/tut1-hello-pike/index.php
ja kirjoita sen sisällöksi,
<?php declare(strict_types=1);
require __DIR__ . '/vendor/autoload.php';
final class HelloModule {
public function init(\Pike\AppContext $ctx): void {
// todo
}
}
$app = new \Pike\App([new HelloModule]);
echo $app::VERSION;
Avaa lempiselaimesi, ja siirry sillä osoitteseen http://<devausYmpäristösiOsoite>/tut1-hello-pike/index.php
. Mikäli selain tulostaa versionumeron, asennus onnistui.
Step 3. Lisää reittikäsittelijä
Nyt sinulla on entry-pointti applikaatiolle, mutta ei vielä yhtään reittiä jota se osaisi käsitellä. Korjaa tilanne rekisteröimällä applikaatioon uusi reittikäsittelijä urlille /
- päivitä /<publicHtmlKansio>/tut1-hello-pike/index.php
-tiedoston sisällöksi:
<?php declare(strict_types=1);
require __DIR__ . '/vendor/autoload.php';
final class HelloModule {
public function init(\Pike\AppContext $ctx): void {
$ctx->router->map('GET', '/', ['HelloController', 'renderHelloPage']);
}
}
final class HelloController {
public function renderHelloPage(\Pike\Response $res): void {
$res->plain('Hello');
}
}
$app = new \Pike\App([new HelloModule]);
$app->handleRequest($_GET['q'] ?? '/');
Uudelleenavaa lempiselaimesi osoiteella http://<devausYmpäristösiOsoite>/tut1-hello-pike/index.php?q=/
, joka pitäisi versionumeron sijaan tulostaa reittikäsittelijän asettama vastaus.
Yhteenveto
Tässä tutoriaalissa:
- Asensit Piken, ja loit uudelle applikaatiolle projektikansion
- Loit applikaatiolle entry-pointin
index.php
, joka luo Pike-instanssin, jonka opetit vastaamaanGET /
-pyyntöön
Valmis seuraavaan steppiin? Goto Tutoriaali #2: Moduulit.