static function getInstance()
 {
     if (!self::$instance) {
         self::$instance = new self();
     }
     return self::$instance;
 }
<?php

require_once './biblerepository.php';
if (empty($_POST['authorid']) || empty($_POST['text'])) {
    echo "Required Data missing.";
} else {
    /* actual post data */
    $quote->authorid = $_POST['authorid'];
    $quote->text = $_POST['text'];
    $quote->source = !empty($_POST['source']) ? $_POST['source'] : '';
    $quote->id = empty($_POST['id']) ? 0 : $_POST['id'];
    try {
        $db = biblerepository::getInstance();
        $result = $db->addQuote($quote);
        echo $result;
    } catch (Exception $e) {
        throw new Exception($e->getMessage());
    }
}
<?php

require_once './biblerepository.php';
header('Content-type/application-json');
$id = $_GET['bookid'];
$bibleRepository = biblerepository::getInstance();
$result = empty($id) ? $bibleRepository->getBooks() : $bibleRepository->getBook($id);
echo json_encode($result, JSON_NUMERIC_CHECK);