porsi haji checker ist eine einfache Bibliothek sowie ein auf der Befehlszeilenschnittstelle (CLI) basierendes Dienstprogramm zum Überprüfen der Hajj-Portionsnummern. Die resultierende Ausgabe sind JSON-Daten. Dieses Dienstprogramm kann als CLI-Version der Website-Seite https://haji.kemenag.go.id/v3/node/955358 betrachtet werden.
Hier erfahren Sie, wie porsi haji checker als CLI-Dienstprogramm verwenden.
$ php bin/porsi-haji-checker.php 3000837XXX
{
" nomor_porsi " : " 3000837XXX " ,
" nama " : " HAMBA ALLAH INDONESIA " ,
" kabupaten_kota " : " KOTA SURABAYA " ,
" provinsi " : " JAWA TIMUR " ,
" kuota " : " 12345 " ,
" posisi_porsi_kuota " : " 12233 " ,
" perkiraan_tahun_berangkat_hijriah " : " 1444 " ,
" perkiraan_tahun_berangkat_masehi " : " 2023 "
}
porsi haji checker verwendet die Standard-PHP-Bibliothek (SPL), nämlich DOMDocument und DOMXPath, um HTML-Seiten zu analysieren, die von der Website haji.kemenag.go.id abgerufen wurden.
Die Demo ist unter https://porsihaji.rioastamal.net verfügbar.
Um porsi haji checker zu installieren, können Sie Composer verwenden oder den Tarball von der Github-Seite herunterladen.
Stellen Sie sicher, dass composer
auf Ihrem System installiert ist. Führen Sie dann zur Installation den folgenden Befehl aus.
$ composer create-project -vvv rioastamal/porsi-haji-checker porsi-haji-checker
$ cd porsi-haji-checker
Wenn Sie die Produktionsversion verwenden möchten, fügen Sie die Option --no-dev
hinzu.
$ composer create-project -vvv --no-dev rioastamal/porsi-haji-checker porsi-haji-checker
Für die manuelle Installation können Sie Git verwenden oder den Tarball von der Github-Seite herunterladen.
$ git clone https://github.com/rioastamal/porsi-haji-checker.git
$ cd porsi-haji-checker
porsi haji checker kann als Dienstprogramm oder als Bibliothek verwendet werden.
Der Speicherort porsi haji checker Teildienstprogramms befindet sich im Verzeichnis bin/. Dieses Dienstprogramm erfordert ein Argument in Form der Hajj-Teilnummer. Hier ist ein Beispiel.
$ php bin/porsi-haji-checker.php 3000837XXX
{
"nomor_porsi": "3000837XXX",
"nama": "HAMBA ALLAH INDONESIA",
"kabupaten_kota": "KOTA SURABAYA",
"provinsi": "JAWA TIMUR",
"kuota": "12345",
"posisi_porsi_kuota": "12233",
"perkiraan_tahun_berangkat_hijriah": "1444",
"perkiraan_tahun_berangkat_masehi": "2023"
}
Neben der Übergabe von Argumenten können Sie die Hajj-Teilnummer auch über den STDIN-Stream bereitstellen. Hier ist ein Beispiel.
$ echo "3000837XXX" | php bin/porsi-haji-checker.php
{
"nomor_porsi": "3000837XXX",
"nama": "HAMBA ALLAH INDONESIA",
"kabupaten_kota": "KOTA SURABAYA",
"provinsi": "JAWA TIMUR",
"kuota": "12345",
"posisi_porsi_kuota": "12233",
"perkiraan_tahun_berangkat_hijriah": "1444",
"perkiraan_tahun_berangkat_masehi": "2023"
}
Das Folgende ist ein Beispiel für die Verwendung der porsi haji checker in einem PHP-Skript. Vorausgesetzt, Sie verwenden den Autoloader von Composer.
<?php
require __DIR__ . ' /../vendor/autoload.php ' ;
// Jika tidak menggunakan autoload cukup require dua script berikut
// require __DIR__ . '/src/NomorHajiScraper.php
// require __DIR__ . '/src/NomorHajiParser.php
use RioAstamal Kemenag NomorHajiScraper ;
use RioAstamal Kemenag NomorHajiParser ;
$ nomorPorsi = ' 3000837XXX ' ;
$ scrapper = NomorHajiScraper:: create ( $ nomorPorsi );
$ parser = NomorHajiParser:: create ( $ scrapper );
$ jsonInfoPorsi = $ parser -> parse ();
print_r ( json_decode ( $ jsonInfoPorsi ), JSON_OBJECT_AS_ARRAY );
/* output
Array
(
[nomor_porsi] => 3000837XXX
[nama] => HAMBA ALLAH INDONESIA
[kabupaten_kota] => KOTA SURABAYA
[provinsi] => JAWA TIMUR
[kuota] => 12345
[posisi_porsi_kuota] => 12233
[perkiraan_tahun_berangkat_hijriah] => 1444
[perkiraan_tahun_berangkat_masehi] => 2023
)
*/
Stellen Sie sicher, dass die Komponenten für die Entwicklung installiert sind, indem Sie den folgenden Composer-Befehl ausführen.
$ composer install -vvv
Dieser Befehl installiert die für die Entwicklung erforderlichen Komponenten. Anschließend kann der Unit-Test mit dem folgenden Befehl ausgeführt werden.
$ ./vendor/bin/phpunit --debug
PHPUnit 6.5.14 by Sebastian Bergmann and contributors.
Test 'RioAstamalKemenagTestNomorHajiParserTest::testReturnJsonSuccess' started
Test 'RioAstamalKemenagTestNomorHajiParserTest::testReturnJsonSuccess' ended
Test 'RioAstamalKemenagTestNomorHajiParserTest::testReturnJsonButEmpty' started
Test 'RioAstamalKemenagTestNomorHajiParserTest::testReturnJsonButEmpty' ended
Test 'RioAstamalKemenagTestNomorHajiParserTest::testScraperReturnError' started
Test 'RioAstamalKemenagTestNomorHajiParserTest::testScraperReturnError' ended
Time: 49 ms, Memory: 4.00MB
OK (3 tests, 15 assertions)
porsi haji checker Teilbibliothek, geschrieben von Rio Astamal [email protected]
Diese Bibliothek verwendet die MIT-Lizenz http://opensource.org/licenses/MIT.