1. Go to this page and download the library: Download pllano/json-db library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
pllano / json-db example snippets
(new \jsonDB\Db(__DIR__ . '/../../_db_/'))->run();
// Или так
$_db = __DIR__ . '/../../_db_/';
$db = new Db($_db);
$db->run();
use jsonDB\Db;
$_db = __DIR__ . '/../../_db_/'; // Указываем директорию где будет храниться json db
$db = new Db($_db);
$db->setPrefixTable("sf"); // Установить префикс таблиц
$db->setPrefixColumn("jhbg5r"); // Установить префикс полей
$db->setCached(false); // Включаем кеширование true|false
$db->setCacheLifetime(60); // Время жизни кеша 60 минут
$db->setTemp(false); // Используем очередь true|false
$db->setApi(false); // Если работаем как основная база устанавливаем false
$db->setStructure(""); // URL к файлу структуры db.json (Не обезательно)
$db->setPublicKey(""); // Установить public_key (Не обезательно)
$db->setCrypt(false); // Шифруем таблицы true|false
$db->setCryptKey(file_get_contents($_db . 'core/key_db.txt', true)); // Загружаем ключ шифрования
$db->run();
use jsonDB\Database as jsonDb;
$arr = array(
'id' => 'integer',
'name' => 'string',
'название_поля' => 'тип данных'
);
jsonDb::create('resource_name', $arr);
use jsonDB\Database as jsonDb;
jsonDb::remove('resource_name');
use jsonDB\Database as jsonDb;
jsonDb::table('resource_name')->delete();
use jsonDB\Validate;
use jsonDB\dbException;
try{
Validate::table('resource_name')->exists();
} catch(dbException $e){
// Ресурс не существует
}
use jsonDB\Database as jsonDb;
$row = jsonDb::table('resource_name');
$row->name = 'Ivan';
$row->save();
use jsonDB\Database as jsonDb;
$row = jsonDb::table('resource_name');
$row->num = $num;
$row->save();
use jsonDB\Database as jsonDb;
echo jsonDb::table('resource_name')->where('name', '=', 'Ivan')->findAll();
// или по id
echo jsonDb::table('resource_name')->where('id', '=', '10')->findAll();
use jsonDB\Database as jsonDb;
$row = jsonDb::table('resource_name')->find(10);
$row->name = 'Andrey';
$row->save();
use jsonDB\Database as jsonDb;
jsonDb::table('resource_name')->find(10)->delete();
php
use GuzzleHttp\Client as Guzzle;
$public_key = $config['settings']['db']['public_key']; // Взять key из конфигурации `https://example.com/_12345_/index.php`
$resource = 'db';
$id = '1';
// $uri = 'https://example.com/_12345_/'.$resource.'?public_key='.$public_key;
$uri = 'https://example.com/_12345_/'.$resource.'/'.$id.'?public_key='.$public_key;
$client = new Guzzle();
$resp = $client->request('GET', $uri);
$get_body = $resp->getBody();
// Чистим все что не нужно, иначе json_decode не сможет конвертировать json в массив
for ($i = 0; $i <= 31; ++$i) {$get_body = str_replace(chr($i), "", $get_body);}
$get_body = str_replace(chr(127), "", $get_body);
if (0 === strpos(bin2hex($get_body), 'efbbbf')) {$get_body = substr($get_body, 3);}
$response = json_decode($get_body, true);
if (isset($response["headers"]["code"])) {
if ($response["headers"]["code"] == 200) {
$count = count($response["body"]["items"]);
if ($count >= 1) {
foreach($response["body"]["items"] as $item)
{
// Если $value object переводим в array
$item = is_array($value["item"]) ? $item["item"] : (array)$value["item"];
// Получаем данные
print_r($item["name"]);
}
}
}
}
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.