This is a PHP 7.3 library that has access to Torah (Tanakh, Nevi'im ketuvim and Brithadasha books) in 21 translations via api (GuzzleHttp client) to biblia.info.pl/api service.
This library has cache
option (sqlite) enabled. You may cache your api requests from now on.
in packagist
cd YourProject
composer require jaroslawzielinski/torah
"Czas się wypełnił i bliskie jest królestwo Boże. nawracajcie się i wierzcie w Ewangelię."
Ew. Marka 1:15, Biblia Tysiąclecia
"i mówiąc: Wypełnił się czas i zbliżyło się Królestwo Boga; skruszcie się oraz wierzcie w Dobrą Nowinę."
Ew. Marka 1:15, Nowa Biblia Gdańska
"and saying -- `Fulfilled hath been the time, and the reign of God hath come nigh, reform ye, and believe in the good news.'"
Mark 1:15, Young's Literal Translation
// Books of Tanakh
// Books of Nevi'im ketuvim
// Books of Brithadasha
<?php
declare(strict_types=1);
require __DIR__ . '/vendor/autoload.php';
use GuzzleHttp\Client as GuzzleClient;
use JaroslawZielinski\Torah\Bible\Service;
use JaroslawZielinski\Torah\Bible\Torah;
use JaroslawZielinski\Torah\Bible\Torah\SiglumFactory;
use JaroslawZielinski\Torah\Bible\TorahValidator;
use JaroslawZielinski\Torah\Translations\Resources;
use JaroslawZielinski\Torah\Bible\Service\Offline\Repository;
use Monolog\Logger;
use Monolog\Handler\StreamHandler;
$siglum =
SiglumFactory::create(
Resources::TORAH_TRANSLATION_KJV,
Resources::TORAH_BOOKS_J,
'14',
'21-24'
);
$logger = new Logger('Torah');
$logger->pushHandler(new StreamHandler(__DIR__ . '/Torah.log', Logger::INFO));
$onlineClient = new Service\Online\Client($logger, new GuzzleClient());
$offlineClient = new Service\Offline\Client(new Repository());
$options = ['cache' => true];
$torah = new Torah(
new TorahValidator(),
new Service($onlineClient, $offlineClient),
$options
);
$text = $torah->getTextBySiglum($siglum, Torah::LANGUAGE_EN);
if (!empty($text)) {
echo $text->getOrdered() . '<br/><br/>';
echo $text->getUnOrdered() . '<br/><br/>';
echo $text->getDescription() . '<br/><br/>';
} else {
echo 'Empty!';
print_r($torah->getErrors());
}
Output:
(21) He that hath my commandments, and keepeth them, he it is that loveth me: and he that loveth me shall be loved of my Father, and I will love him, and will manifest myself to him. (22) Judas saith unto him, not Iscariot, Lord, how is it that thou wilt manifest thyself unto us, and not unto the world? (23) Jesus answered and said unto him, If a man love me, he will keep my words: and my Father will love him, and we will come unto him, and make our abode with him. (24) He that loveth me not keepeth not my sayings: and the word which ye hear is not mine, but the Father's which sent me.
He that hath my commandments, and keepeth them, he it is that loveth me: and he that loveth me shall be loved of my Father, and I will love him, and will manifest myself to him. Judas saith unto him, not Iscariot, Lord, how is it that thou wilt manifest thyself unto us, and not unto the world? Jesus answered and said unto him, If a man love me, he will keep my words: and my Father will love him, and we will come unto him, and make our abode with him. He that loveth me not keepeth not my sayings: and the word which ye hear is not mine, but the Father's which sent me.
John 14:21-24, King James Version
<?php
declare(strict_types=1);
require __DIR__ . '/vendor/autoload.php';
use GuzzleHttp\Client as GuzzleClient;
use JaroslawZielinski\Torah\Bible\Service;
use JaroslawZielinski\Torah\Bible\Torah;
use JaroslawZielinski\Torah\Bible\Torah\SiglumFactory;
use JaroslawZielinski\Torah\Bible\TorahValidator;
use JaroslawZielinski\Torah\Translations\Resources;
use JaroslawZielinski\Torah\Bible\Service\Offline\Repository;
use Monolog\Logger;
use Monolog\Handler\StreamHandler;
$siglum =
SiglumFactory::create(
Resources::TORAH_TRANSLATION_BW,
Resources::TORAH_BOOKS_TB,
'1',
'1'
);
$logger = new Logger('Torah');
$logger->pushHandler(new StreamHandler(__DIR__ . '/Torah.log', Logger::INFO));
$onlineClient = new Service\Online\Client($logger, new GuzzleClient());
$offlineClient = new Service\Offline\Client(new Repository());
$options = ['cache' => true];
$torah = new Torah(
new TorahValidator(),
new Service($onlineClient, $offlineClient),
$options
);
$translation = $torah->getResourceByTranslationCode($siglum->getTranslation());
var_dump($torah->isValid($siglum, $translation, Torah::LANGUAGE_EN));
print_r($torah->getErrors());
Output:
bool(false) Array ( [0] => The translation is not deutero cannonical. )
<?php
declare(strict_types=1);
require __DIR__ . '/vendor/autoload.php';
use GuzzleHttp\Client as GuzzleClient;
use JaroslawZielinski\Torah\Bible\Service;
use JaroslawZielinski\Torah\Bible\Torah;
use JaroslawZielinski\Torah\Bible\TorahValidator;
use JaroslawZielinski\Torah\Translations\Resources;
use JaroslawZielinski\Torah\Bible\Service\Offline\Repository;
use Monolog\Logger;
use Monolog\Handler\StreamHandler;
$logger = new Logger('Torah');
$logger->pushHandler(new StreamHandler(__DIR__ . '/Torah.log', Logger::INFO));
$onlineClient = new Service\Online\Client($logger, new GuzzleClient());
$offlineClient = new Service\Offline\Client(new Repository());
$options = ['cache' => true];
$torah = new Torah(
new TorahValidator(),
new Service($onlineClient, $offlineClient),
$options
);
$translation = $torah->getResourceByTranslationCode(Resources::TORAH_TRANSLATION_BT);
$books = $translation->getBooks();
print_r($books[Resources::TANAKH]);
echo '<br/><br/>';
print_r($books[Resources::NEVIIMKETUVIM]);
echo '<br/><br/>';
print_r($books[Resources::BRITHADASHA]);
echo '<br/><br/>';
print_r($books[Resources::EXCEPTIONS]);
Output:
Array ( [gen] => Array ( [chapters] => Array ( [1] => 31 [2] => 25 [3] => 24 [4] => 26 [5] => 32 [6] => 22 [7] => 24 [8] => 22 [9] => 29 [10] => 32 [11] => 32 [12] => 20 [13] => 18 [14] => 24 [15] => 21 [16] => 16 [17] => 27 [18] => 33 [19] => 38 [20] => 18 [21] => 34 [22] => 24 [23] => 20 [24] => 67 [25] => 34 [26] => 35 [27] => 46 [28] => 22 [29] => 35 [30] => 43 [31] => 54 [32] => 33 [33] => 20 [34] => 31 [35] => 29 [36] => 43 [37] => 36 [38] => 30 [39] => 23 [40] => 23 [41] => 57 [42] => 38 [43] => 34 [44] => 34 [45] => 28 [46] => 34 [47] => 31 [48] => 22 [49] => 33 ) ) [ex] => Array ( [chapters] => Array ( [1] => 22 [2] => 25 [3] => 22 [4] => 31 [5] => 23 [6] => 30 [7] => 29 [8] => 28 [9] => 35 [10] => 29 [11] => 10 [12] => 51 [13] => 22 [14] => 31 [15] => 27 [16] => 36 [17] => 16 [18] => 27 [19] => 25 [20] => 26 [21] => 37 [22] => 30 [23] => 33 [24] => 18 [25] => 40 [26] => 37 [27] => 21 [28] => 43 [29] => 46 [30] => 38 [31] => 18 [32] => 35 [33] => 23 [34] => 35 [35] => 35 [36] => 38 [37] => 29 [38] => 31 [39] => 43 [40] => 38 ) ) [lev] => Array ( [chapters] => Array ( [1] => 17 [2] => 16 [3] => 17 [4] => 35 [5] => 26 [6] => 23 [7] => 38 [8] => 36 [9] => 24 [10] => 20 [11] => 47 [12] => 8 [13] => 59 [14] => 57 [15] => 33 [16] => 34 [17] => 16 [18] => 30 [19] => 37 [20] => 27 [21] => 24 [22] => 33 [23] => 44 [24] => 23 [25] => 55 [26] => 46 [27] => 34 ) ) [num] => Array ( [chapters] => Array ( [1] => 54 [2] => 34 [3] => 51 [4] => 49 [5] => 31 [6] => 27 [7] => 89 [8] => 26 [9] => 23 [10] => 36 [11] => 35 [12] => 16 [13] => 33 [14] => 45 [15] => 41 [16] => 35 [17] => 28 [18] => 32 [19] => 22 [20] => 29 [21] => 35 [22] => 41 [23] => 30 [24] => 25 [25] => 19 [26] => 65 [27] => 23 [28] => 31 [29] => 39 [30] => 17 [31] => 54 [32] => 42 [33] => 56 [34] => 29 [35] => 34 [36] => 13 ) ) [deu] => Array ( [chapters] => Array ( [1] => 46 [2] => 37 [3] => 29 [4] => 49 [5] => 33 [6] => 25 [7] => 26 [8] => 20 [9] => 29 [10] => 22 [11] => 32 [12] => 31 [13] => 19 [14] => 29 [15] => 23 [16] => 22 [17] => 20 [18] => 22 [19] => 21 [20] => 20 [21] => 23 [22] => 29 [23] => 26 [24] => 22 [25] => 19 [26] => 19 [27] => 26 [28] => 69 [29] => 28 [30] => 20 [31] => 30 [32] => 52 [33] => 29 [34] => 12 ) ) [jos] => Array ( [chapters] => Array ( [1] => 18 [2] => 24 [3] => 17 [4] => 24 [5] => 15 [6] => 27 [7] => 26 [8] => 35 [9] => 27 [10] => 43 [11] => 23 [12] => 24 [13] => 33 [14] => 15 [15] => 63 [16] => 10 [17] => 18 [18] => 28 [19] => 51 [20] => 9 [21] => 45 [22] => 34 [23] => 16 [24] => 33 ) ) [jdg] => Array ( [chapters] => Array ( [1] => 36 [2] => 23 [3] => 31 [4] => 24 [5] => 31 [6] => 40 [7] => 25 [8] => 35 [9] => 57 [10] => 18 [11] => 40 [12] => 15 [13] => 25 [14] => 20 [15] => 20 [16] => 31 [17] => 13 [18] => 31 [19] => 30 [20] => 48 [21] => 25 ) ) [ru] => Array ( [chapters] => Array ( [1] => 22 [2] => 23 [3] => 18 [4] => 22 ) ) [1sa] => Array ( [chapters] => Array ( [1] => 28 [2] => 36 [3] => 21 [4] => 22 [5] => 12 [6] => 21 [7] => 17 [8] => 22 [9] => 27 [10] => 27 [11] => 15 [12] => 25 [13] => 23 [14] => 52 [15] => 35 [16] => 23 [17] => 58 [18] => 30 [19] => 24 [20] => 42 [21] => 15 [22] => 23 [23] => 28 [24] => 23 [25] => 44 [26] => 25 [27] => 12 [28] => 25 [29] => 11 [30] => 31 [31] => 13 ) ) [2sa] => Array ( [chapters] => Array ( [1] => 27 [2] => 32 [3] => 39 [4] => 12 [5] => 25 [6] => 23 [7] => 29 [8] => 18 [9] => 13 [10] => 19 [11] => 27 [12] => 31 [13] => 39 [14] => 33 [15] => 37 [16] => 23 [17] => 29 [18] => 32 [19] => 44 [20] => 26 [21] => 22 [22] => 51 [23] => 39 [24] => 25 ) ) [1ki] => Array ( [chapters] => Array ( [1] => 53 [2] => 46 [3] => 28 [4] => 20 [5] => 32 [6] => 38 [7] => 51 [8] => 66 [9] => 28 [10] => 29 [11] => 43 [12] => 33 [13] => 34 [14] => 31 [15] => 34 [16] => 34 [17] => 24 [18] => 46 [19] => 21 [20] => 43 [21] => 29 [22] => 54 ) ) [2ki] => Array ( [chapters] => Array ( [1] => 18 [2] => 25 [3] => 27 [4] => 44 [5] => 27 [6] => 33 [7] => 20 [8] => 29 [9] => 37 [10] => 36 [11] => 20 [12] => 22 [13] => 25 [14] => 29 [15] => 38 [16] => 20 [17] => 41 [18] => 37 [19] => 37 [20] => 21 [21] => 26 [22] => 20 [23] => 37 [24] => 20 [25] => 30 ) ) [1ch] => Array ( [chapters] => Array ( [1] => 53 [2] => 55 [3] => 24 [4] => 43 [5] => 41 [6] => 66 [7] => 40 [8] => 40 [9] => 44 [10] => 14 [11] => 47 [12] => 41 [13] => 14 [14] => 17 [15] => 29 [16] => 43 [17] => 27 [18] => 17 [19] => 19 [20] => 8 [21] => 30 [22] => 19 [23] => 32 [24] => 31 [25] => 31 [26] => 32 [27] => 34 [28] => 21 [29] => 30 ) ) [2ch] => Array ( [chapters] => Array ( [1] => 18 [2] => 17 [3] => 17 [4] => 22 [5] => 14 [6] => 42 [7] => 22 [8] => 18 [9] => 31 [10] => 19 [11] => 23 [12] => 16 [13] => 23 [14] => 14 [15] => 19 [16] => 14 [17] => 19 [18] => 34 [19] => 11 [20] => 37 [21] => 20 [22] => 12 [23] => 21 [24] => 27 [25] => 28 [26] => 23 [27] => 9 [28] => 27 [29] => 36 [30] => 27 [31] => 21 [32] => 33 [33] => 25 [34] => 33 [35] => 27 [36] => 23 ) ) [ezr] => Array ( [chapters] => Array ( [1] => 11 [2] => 70 [3] => 13 [4] => 24 [5] => 17 [6] => 22 [7] => 28 [8] => 36 [9] => 15 [10] => 44 ) ) [neh] => Array ( [chapters] => Array ( [1] => 11 [2] => 20 [3] => 38 [4] => 17 [5] => 19 [6] => 19 [7] => 72 [8] => 18 [9] => 37 [10] => 40 [11] => 36 [12] => 47 [13] => 31 ) ) [tob] => Array ( [chapters] => Array ( [1] => 22 [2] => 14 [3] => 17 [4] => 21 [5] => 23 [6] => 19 [7] => 16 [8] => 21 [9] => 6 [10] => 14 [11] => 19 [12] => 22 [13] => 18 [14] => 15 ) ) [jdt] => Array ( [chapters] => Array ( [1] => 16 [2] => 28 [3] => 10 [4] => 15 [5] => 24 [6] => 21 [7] => 32 [8] => 36 [9] => 14 [10] => 23 [11] => 23 [12] => 20 [13] => 20 [14] => 19 [15] => 14 [16] => 25 ) ) [est] => Array ( [chapters] => Array ( [1] => 22 [2] => 23 [3] => 15 [4] => 17 [5] => 14 [6] => 14 [7] => 10 [8] => 17 [9] => 32 [10] => 3 ) ) [1mach] => Array ( [chapters] => Array ( [1] => 64 [2] => 70 [3] => 60 [4] => 61 [5] => 68 [6] => 63 [7] => 50 [8] => 32 [9] => 73 [10] => 89 [11] => 74 [12] => 53 [13] => 53 [14] => 49 [15] => 41 [16] => 24 ) ) [2mach] => Array ( [chapters] => Array ( [1] => 36 [2] => 32 [3] => 40 [4] => 50 [5] => 27 [6] => 31 [7] => 42 [8] => 36 [9] => 29 [10] => 38 [11] => 38 [12] => 45 [13] => 26 [14] => 46 [15] => 39 ) ) [hi] => Array ( [chapters] => Array ( [1] => 22 [2] => 13 [3] => 26 [4] => 21 [5] => 27 [6] => 30 [7] => 21 [8] => 22 [9] => 35 [10] => 22 [11] => 20 [12] => 25 [13] => 28 [14] => 22 [15] => 35 [16] => 22 [17] => 16 [18] => 21 [19] => 29 [20] => 29 [21] => 34 [22] => 30 [23] => 17 [24] => 17 [25] => 6 [26] => 14 [27] => 24 [28] => 28 [29] => 25 [30] => 31 [31] => 40 [32] => 21 [33] => 33 [34] => 37 [35] => 16 [36] => 33 [37] => 24 [38] => 41 [39] => 30 [40] => 32 [41] => 26 [42] => 17 ) ) [ps] => Array ( [chapters] => Array ( [1] => 6 [2] => 12 [3] => 9 [4] => 9 [5] => 13 [6] => 11 [7] => 18 [8] => 10 [9] => 21 [10] => 18 [11] => 7 [12] => 9 [13] => 6 [14] => 7 [15] => 5 [16] => 11 [17] => 15 [18] => 51 [19] => 15 [20] => 10 [21] => 14 [22] => 32 [23] => 6 [24] => 10 [25] => 22 [26] => 12 [27] => 14 [28] => 9 [29] => 11 [30] => 13 [31] => 25 [32] => 11 [33] => 22 [34] => 23 [35] => 28 [36] => 13 [37] => 40 [38] => 23 [39] => 14 [40] => 18 [41] => 14 [42] => 12 [43] => 5 [44] => 27 [45] => 18 [46] => 12 [47] => 10 [48] => 15 [49] => 21 [50] => 23 [51] => 21 [52] => 11 [53] => 7 [54] => 9 [55] => 24 [56] => 14 [57] => 12 [58] => 12 [59] => 18 [60] => 14 [61] => 9 [62] => 13 [63] => 12 [64] => 11 [65] => 14 [66] => 20 [67] => 8 [68] => 36 [69] => 37 [70] => 6 [71] => 24 [72] => 20 [73] => 28 [74] => 23 [75] => 11 [76] => 13 [77] => 21 [78] => 72 [79] => 13 [80] => 20 [81] => 17 [82] => 8 [83] => 19 [84] => 13 [85] => 14 [86] => 17 [87] => 7 [88] => 19 [89] => 53 [90] => 17 [91] => 16 [92] => 16 [93] => 5 [94] => 23 [95] => 11 [96] => 13 [97] => 12 [98] => 9 [99] => 9 [100] => 5 [101] => 8 [102] => 29 [103] => 22 [104] => 35 [105] => 45 [106] => 48 [107] => 43 [108] => 14 [109] => 31 [110] => 7 [111] => 10 [112] => 10 [113] => 9 [114] => 8 [115] => 18 [116] => 19 [117] => 2 [118] => 29 [119] => 176 [120] => 7 [121] => 8 [122] => 9 [123] => 4 [124] => 8 [125] => 5 [126] => 6 [127] => 5 [128] => 6 [129] => 8 [130] => 8 [131] => 3 [132] => 18 [133] => 3 [134] => 3 [135] => 21 [136] => 26 [137] => 9 [138] => 8 [139] => 24 [140] => 14 [141] => 10 [142] => 8 [143] => 12 [144] => 15 [145] => 21 [146] => 10 [147] => 20 [148] => 14 [149] => 9 [150] => 6 ) ) [pr] => Array ( [chapters] => Array ( [1] => 33 [2] => 22 [3] => 35 [4] => 27 [5] => 23 [6] => 35 [7] => 27 [8] => 36 [9] => 18 [10] => 32 [11] => 31 [12] => 28 [13] => 25 [14] => 35 [15] => 33 [16] => 33 [17] => 28 [18] => 24 [19] => 29 [20] => 30 [21] => 31 [22] => 29 [23] => 35 [24] => 34 [25] => 28 [26] => 28 [27] => 27 [28] => 28 [29] => 27 [30] => 33 [31] => 31 ) ) [ecc] => Array ( [chapters] => Array ( [1] => 18 [2] => 26 [3] => 22 [4] => 17 [5] => 19 [6] => 12 [7] => 29 [8] => 17 [9] => 18 [10] => 20 [11] => 10 [12] => 14 ) ) [ss] => Array ( [chapters] => Array ( [1] => 17 [2] => 17 [3] => 11 [4] => 16 [5] => 16 [6] => 12 [7] => 14 [8] => 14 ) ) [mdr] => Array ( [chapters] => Array ( [1] => 16 [2] => 24 [3] => 19 [4] => 20 [5] => 23 [6] => 25 [7] => 30 [8] => 21 [9] => 18 [10] => 21 [11] => 26 [12] => 27 [13] => 19 [14] => 31 [15] => 19 [16] => 29 [17] => 20 [18] => 25 [19] => 22 ) ) [syr] => Array ( [chapters] => Array ( [0] => 35 [1] => 30 [2] => 18 [3] => 31 [4] => 31 [5] => 15 [6] => 37 [7] => 36 [8] => 19 [9] => 18 [10] => 31 [11] => 34 [12] => 18 [13] => 26 [14] => 27 [15] => 20 [16] => 30 [17] => 32 [18] => 33 [19] => 30 [20] => 31 [21] => 28 [22] => 27 [23] => 27 [24] => 34 [25] => 26 [26] => 29 [27] => 30 [28] => 26 [29] => 28 [30] => 25 [31] => 31 [32] => 24 [33] => 33 [34] => 26 [35] => 24 [36] => 27 [37] => 31 [38] => 34 [39] => 35 [40] => 30 [41] => 27 [42] => 25 [43] => 33 [44] => 23 [45] => 26 [46] => 20 [47] => 25 [48] => 25 [49] => 16 [50] => 29 [51] => 29 ) ) )
Array ( [isa] => Array ( [chapters] => Array ( [1] => 31 [2] => 22 [3] => 26 [4] => 6 [5] => 30 [6] => 13 [7] => 25 [8] => 23 [9] => 20 [10] => 34 [11] => 16 [12] => 6 [13] => 22 [14] => 32 [15] => 9 [16] => 14 [17] => 14 [18] => 7 [19] => 25 [20] => 6 [21] => 17 [22] => 25 [23] => 18 [24] => 23 [25] => 12 [26] => 21 [27] => 13 [28] => 29 [29] => 24 [30] => 33 [31] => 9 [32] => 20 [33] => 24 [34] => 17 [35] => 10 [36] => 22 [37] => 38 [38] => 20 [39] => 8 [40] => 31 [41] => 29 [42] => 25 [43] => 28 [44] => 28 [45] => 25 [46] => 13 [47] => 15 [48] => 22 [49] => 26 [50] => 11 [51] => 23 [52] => 15 [53] => 12 [54] => 17 [55] => 13 [56] => 12 [57] => 21 [58] => 14 [59] => 21 [60] => 22 [61] => 11 [62] => 12 [63] => 19 [64] => 11 [65] => 25 [66] => 24 ) ) [jer] => Array ( [chapters] => Array ( [1] => 19 [2] => 37 [3] => 25 [4] => 31 [5] => 31 [6] => 30 [7] => 34 [8] => 23 [9] => 25 [10] => 25 [11] => 23 [12] => 17 [13] => 27 [14] => 22 [15] => 21 [16] => 21 [17] => 27 [18] => 23 [19] => 15 [20] => 18 [21] => 14 [22] => 30 [23] => 40 [24] => 10 [25] => 38 [26] => 24 [27] => 22 [28] => 17 [29] => 32 [30] => 24 [31] => 40 [32] => 44 [33] => 26 [34] => 22 [35] => 19 [36] => 32 [37] => 21 [38] => 27 [39] => 18 [40] => 16 [41] => 18 [42] => 22 [43] => 13 [44] => 30 [45] => 5 [46] => 28 [47] => 7 [48] => 47 [49] => 39 [50] => 46 [51] => 64 [52] => 34 ) ) [tr] => Array ( [chapters] => Array ( [1] => 22 [2] => 22 [3] => 66 [4] => 22 [5] => 22 ) ) [bar] => Array ( [chapters] => Array ( [1] => 22 [2] => 35 [3] => 38 [4] => 37 [5] => 9 [6] => 72 ) ) [ez] => Array ( [chapters] => Array ( [1] => 28 [2] => 10 [3] => 27 [4] => 17 [5] => 17 [6] => 14 [7] => 27 [8] => 18 [9] => 11 [10] => 22 [11] => 25 [12] => 28 [13] => 23 [14] => 23 [15] => 8 [16] => 63 [17] => 24 [18] => 32 [19] => 14 [20] => 44 [21] => 37 [22] => 31 [23] => 49 [24] => 27 [25] => 17 [26] => 21 [27] => 36 [28] => 26 [29] => 21 [30] => 26 [31] => 18 [32] => 32 [33] => 33 [34] => 31 [35] => 15 [36] => 38 [37] => 28 [38] => 23 [39] => 29 [40] => 49 [41] => 26 [42] => 20 [43] => 27 [44] => 31 [45] => 25 [46] => 24 [47] => 23 [48] => 35 ) ) [dn] => Array ( [chapters] => Array ( [1] => 21 [2] => 49 [3] => 99 [4] => 34 [5] => 30 [6] => 29 [7] => 28 [8] => 27 [9] => 27 [10] => 19 [11] => 45 [12] => 13 [13] => 64 [14] => 42 ) ) [hos] => Array ( [chapters] => Array ( [1] => 9 [2] => 25 [3] => 5 [4] => 19 [5] => 15 [6] => 11 [7] => 16 [8] => 14 [9] => 17 [10] => 15 [11] => 11 [12] => 15 [13] => 15 [14] => 10 ) ) [joel] => Array ( [chapters] => Array ( [1] => 20 [2] => 27 [3] => 5 ) ) [amos] => Array ( [chapters] => Array ( [1] => 15 [2] => 16 [3] => 15 [4] => 13 [5] => 27 [6] => 14 [7] => 17 [8] => 14 [9] => 15 ) ) [ob] => Array ( [chapters] => Array ( [1] => 21 ) ) [jnh] => Array ( [chapters] => Array ( [1] => 16 [2] => 11 [3] => 10 [4] => 11 ) ) [mic] => Array ( [chapters] => Array ( [1] => 16 [2] => 13 [3] => 12 [4] => 14 [5] => 14 [6] => 16 [7] => 20 ) ) [nach] => Array ( [chapters] => Array ( [1] => 14 [2] => 14 [3] => 19 ) ) [hab] => Array ( [chapters] => Array ( [1] => 17 [2] => 20 [3] => 19 ) ) [zep] => Array ( [chapters] => Array ( [1] => 18 [2] => 15 [3] => 20 ) ) [hag] => Array ( [chapters] => Array ( [1] => 15 [2] => 23 ) ) [zec] => Array ( [chapters] => Array ( [1] => 17 [2] => 17 [3] => 10 [4] => 14 [5] => 11 [6] => 15 [7] => 14 [8] => 23 [9] => 17 [10] => 12 [11] => 17 [12] => 14 [13] => 9 [14] => 21 ) ) [mal] => Array ( [chapters] => Array ( [1] => 14 [2] => 17 [3] => 24 ) ) )
Array ( [mt] => Array ( [chapters] => Array ( [1] => 25 [2] => 23 [3] => 17 [4] => 25 [5] => 48 [6] => 34 [7] => 29 [8] => 34 [9] => 38 [10] => 42 [11] => 30 [12] => 50 [13] => 58 [14] => 36 [15] => 39 [16] => 28 [17] => 27 [18] => 35 [19] => 30 [20] => 34 [21] => 46 [22] => 46 [23] => 39 [24] => 51 [25] => 46 [26] => 75 [27] => 66 [28] => 20 ) ) [mk] => Array ( [chapters] => Array ( [1] => 45 [2] => 28 [3] => 35 [4] => 41 [5] => 43 [6] => 56 [7] => 37 [8] => 38 [9] => 50 [10] => 52 [11] => 33 [12] => 44 [13] => 37 [14] => 72 [15] => 47 [16] => 20 ) ) [lk] => Array ( [chapters] => Array ( [1] => 80 [2] => 52 [3] => 38 [4] => 44 [5] => 39 [6] => 49 [7] => 50 [8] => 56 [9] => 62 [10] => 42 [11] => 54 [12] => 59 [13] => 35 [14] => 35 [15] => 32 [16] => 31 [17] => 37 [18] => 43 [19] => 48 [20] => 47 [21] => 38 [22] => 71 [23] => 56 [24] => 53 ) ) [jn] => Array ( [chapters] => Array ( [1] => 51 [2] => 25 [3] => 36 [4] => 54 [5] => 47 [6] => 71 [7] => 53 [8] => 59 [9] => 41 [10] => 42 [11] => 57 [12] => 50 [13] => 38 [14] => 31 [15] => 27 [16] => 33 [17] => 26 [18] => 40 [19] => 42 [20] => 31 [21] => 25 ) ) [ac] => Array ( [chapters] => Array ( [1] => 26 [2] => 47 [3] => 26 [4] => 37 [5] => 42 [6] => 15 [7] => 60 [8] => 40 [9] => 43 [10] => 48 [11] => 30 [12] => 25 [13] => 52 [14] => 28 [15] => 41 [16] => 40 [17] => 34 [18] => 28 [19] => 40 [20] => 38 [21] => 40 [22] => 30 [23] => 35 [24] => 27 [25] => 27 [26] => 32 [27] => 44 [28] => 31 ) ) [ro] => Array ( [chapters] => Array ( [1] => 32 [2] => 29 [3] => 31 [4] => 25 [5] => 21 [6] => 23 [7] => 25 [8] => 39 [9] => 33 [10] => 21 [11] => 36 [12] => 21 [13] => 14 [14] => 23 [15] => 33 [16] => 27 ) ) [1co] => Array ( [chapters] => Array ( [1] => 31 [2] => 16 [3] => 23 [4] => 21 [5] => 13 [6] => 20 [7] => 40 [8] => 13 [9] => 27 [10] => 33 [11] => 34 [12] => 31 [13] => 13 [14] => 40 [15] => 58 [16] => 24 ) ) [2co] => Array ( [chapters] => Array ( [1] => 24 [2] => 17 [3] => 18 [4] => 18 [5] => 21 [6] => 18 [7] => 16 [8] => 24 [9] => 15 [10] => 18 [11] => 33 [12] => 21 [13] => 13 ) ) [gal] => Array ( [chapters] => Array ( [1] => 24 [2] => 21 [3] => 29 [4] => 31 [5] => 26 [6] => 18 ) ) [eph] => Array ( [chapters] => Array ( [1] => 23 [2] => 22 [3] => 21 [4] => 32 [5] => 33 [6] => 24 ) ) [php] => Array ( [chapters] => Array ( [1] => 30 [2] => 30 [3] => 21 [4] => 23 ) ) [col] => Array ( [chapters] => Array ( [1] => 29 [2] => 23 [3] => 25 [4] => 18 ) ) [1th] => Array ( [chapters] => Array ( [1] => 10 [2] => 20 [3] => 13 [4] => 18 [5] => 28 ) ) [2th] => Array ( [chapters] => Array ( [1] => 12 [2] => 17 [3] => 18 ) ) [1tm] => Array ( [chapters] => Array ( [1] => 20 [2] => 15 [3] => 16 [4] => 16 [5] => 25 [6] => 21 ) ) [2tm] => Array ( [chapters] => Array ( [1] => 18 [2] => 26 [3] => 17 [4] => 22 ) ) [tyt] => Array ( [chapters] => Array ( [1] => 16 [2] => 15 [3] => 15 ) ) [phm] => Array ( [chapters] => Array ( [1] => 25 ) ) [hebr] => Array ( [chapters] => Array ( [1] => 14 [2] => 18 [3] => 19 [4] => 16 [5] => 14 [6] => 20 [7] => 28 [8] => 13 [9] => 28 [10] => 39 [11] => 40 [12] => 29 [13] => 25 ) ) [jas] => Array ( [chapters] => Array ( [1] => 27 [2] => 26 [3] => 18 [4] => 17 [5] => 20 ) ) [1pe] => Array ( [chapters] => Array ( [1] => 25 [2] => 25 [3] => 22 [4] => 19 [5] => 14 ) ) [2pe] => Array ( [chapters] => Array ( [1] => 21 [2] => 22 [3] => 18 ) ) [1jn] => Array ( [chapters] => Array ( [1] => 10 [2] => 29 [3] => 24 [4] => 21 [5] => 21 ) ) [2jn] => Array ( [chapters] => Array ( [1] => 13 ) ) [3jn] => Array ( [chapters] => Array ( [1] => 15 ) ) [jude] => Array ( [chapters] => Array ( [1] => 25 ) ) [rev] => Array ( [chapters] => Array ( [1] => 20 [2] => 29 [3] => 22 [4] => 11 [5] => 14 [6] => 17 [7] => 17 [8] => 13 [9] => 21 [10] => 11 [11] => 19 [12] => 18 [13] => 18 [14] => 20 [15] => 8 [16] => 21 [17] => 18 [18] => 24 [19] => 21 [20] => 15 [21] => 27 [22] => 21 ) ) )
Array ( [jos] => Array ( [chapters] => Array ( [15] => Array ( [59] => Array ( [0] => 59a [1] => 59b ) ) ) ) [jdg] => Array ( [chapters] => Array ( [13] => Array ( [16] => Array ( [0] => 16b [1] => 16a ) ) ) ) [1ki] => Array ( [chapters] => Array ( [15] => Array ( [6] => Array ( ) ) ) ) [tob] => Array ( [chapters] => Array ( [9] => Array ( [3] => Array ( ) ) ) ) [syr] => Array ( [chapters] => Array ( [17] => Array ( [21] => Array ( ) ) [22] => Array ( [7] => Array ( ) [8] => Array ( ) ) ) ) [isa] => Array ( [chapters] => Array ( [7] => Array ( [8] => Array ( [0] => 8a [1] => 9a ) [9] => Array ( [0] => 8b [1] => 9b ) ) [33] => Array ( [21] => Array ( [0] => 21 [1] => 23a ) [23] => Array ( [0] => 23b ) ) [41] => Array ( [6] => Array ( ) [7] => Array ( ) ) ) ) [jer] => Array ( [chapters] => Array ( [5] => Array ( [14] => Array ( [0] => 14a [1] => 13b [2] => 14b ) ) ) ) [hag] => Array ( [chapters] => Array ( [1] => Array ( [7] => Array ( [0] => 7a ) [8] => Array ( [0] => 8 [1] => 7b ) ) ) ) [mt] => Array ( [chapters] => Array ( [23] => Array ( [14] => Array ( ) ) ) ) [mk] => Array ( [chapters] => Array ( [9] => Array ( [44] => Array ( ) [46] => Array ( ) ) [11] => Array ( [26] => Array ( ) ) ) ) )
Resources::CHAPTERS - array (position on the list is a number of chapter and value is the number of the last verse)
Resources::EXCEPTIONS - array of exceptions, verses that are lacking (or extra added) for some reason in the text (negative and positive exceptions)
f.e
<?php
declare(strict_types=1);
require __DIR__ . '/vendor/autoload.php';
use GuzzleHttp\Client as GuzzleClient;
use JaroslawZielinski\Torah\Bible\Service;
use JaroslawZielinski\Torah\Bible\Torah;
use JaroslawZielinski\Torah\Bible\TorahValidator;
use JaroslawZielinski\Torah\Translations\Resources;
use JaroslawZielinski\Torah\Bible\Service\Offline\Repository;
use Monolog\Logger;
use Monolog\Handler\StreamHandler;
$logger = new Logger('Torah');
$logger->pushHandler(new StreamHandler(__DIR__ . '/Torah.log', Logger::INFO));
$onlineClient = new Service\Online\Client($logger, new GuzzleClient());
$offlineClient = new Service\Offline\Client(new Repository());
$options = ['cache' => true];
$torah = new Torah(
new TorahValidator(),
new Service($onlineClient, $offlineClient),
$options
);
$translation = $torah->getResourceByTranslationCode(Resources::TORAH_TRANSLATION_BT);
$books = $translation->getBooks();
$joz = $books[Resources::TANAKH][Resources::TORAH_BOOKS_JOZ];
print_r($joz[Resources::CHAPTERS]);
Output:
Array ( [1] => 18 [2] => 24 [3] => 17 [4] => 24 [5] => 15 [6] => 27 [7] => 26 [8] => 35 [9] => 27 [10] => 43 [11] => 23 [12] => 24 [13] => 33 [14] => 15 [15] => 63 [16] => 10 [17] => 18 [18] => 28 [19] => 51 [20] => 9 [21] => 45 [22] => 34 [23] => 16 [24] => 33 )