add json func

This commit is contained in:
Alexander Popov 2022-04-03 09:04:24 +03:00
parent 909cd73762
commit a42013753a
Signed by: iiiypuk
GPG Key ID: 3F76816AEE08F908
39 changed files with 83 additions and 0 deletions

7
README.md Normal file
View File

@ -0,0 +1,7 @@
* [HTML](HTML/)
* [CSS](CSS/)
* [HTTP](HTTP/)
* [PHP](PHP/)
* [JavaScript](JavaScript/)
* [nginx](nginx/)
* [Solar2D](Solar2D/)

View File

@ -3,6 +3,8 @@
## std
- [`gettype`](gettype.php) - Возвращает тип переменной
- [`in_array`](in_array.php) - Проверяет, присутствует ли значение в массиве
- [`json_decode`](json_decode.php) - Декодирует строку JSON
- [`json_encode`](json_encode.php) - Возвращает JSON-представление данных
- [`SQLite3`](sqlite3.php) - Простой использования класса SQLite3
## Libs

43
~/PHP/json_decode.php Normal file
View File

@ -0,0 +1,43 @@
<?php
/*
json_decode(
string $json,
?bool $associative = null,
int $depth = 512,
int $flags = 0
): mixed
*/
/*
json
Строка (string) json для декодирования.
Эта функция работает только со строками в кодировке UTF-8.
associative
Если true, объекты JSON будут возвращены как ассоциативные массивы (array);
если false, объекты JSON будут возвращены как объекты (object).
Если null, объекты JSON будут возвращены как ассоциативные массивы (array)
или объекты (object) в зависимости от того,
установлена ли JSON_OBJECT_AS_ARRAY в flags.
depth
Максимальная глубина вложенности структуры,
для которой будет производиться декодирование.
flags
Битовая маска из констант JSON_BIGINT_AS_STRING, JSON_INVALID_UTF8_IGNORE,
JSON_INVALID_UTF8_SUBSTITUTE, JSON_OBJECT_AS_ARRAY, JSON_THROW_ON_ERROR.
Поведение этих констант описаны на странице JSON-констант.
*/
$json = '{"a":1,"b":2,"c":3,"d":4,"e":5}';
var_dump(json_decode($json));
var_dump(json_decode($json, true));
$json = '{"foo-bar": 12345}';
$obj = json_decode($json);
print $obj->{'foo-bar'}; // 12345
?>

31
~/PHP/json_encode.php Normal file
View File

@ -0,0 +1,31 @@
<?php
/*
json_decode(
string $json,
?bool $associative = null,
int $depth = 512,
int $flags = 0
): mixed
*/
/*
value
value - значение, которое будет закодировано.
Может быть любого типа, кроме resource.
flags
Битовая маска, составляемая из значений JSON_FORCE_OBJECT, JSON_HEX_QUOT,
JSON_HEX_TAG, JSON_HEX_AMP, JSON_HEX_APOS, JSON_INVALID_UTF8_IGNORE,
JSON_INVALID_UTF8_SUBSTITUTE, JSON_NUMERIC_CHECK, JSON_PARTIAL_OUTPUT_ON_ERROR,
JSON_PRESERVE_ZERO_FRACTION, JSON_PRETTY_PRINT, JSON_UNESCAPED_LINE_TERMINATORS,
JSON_UNESCAPED_SLASHES, JSON_UNESCAPED_UNICODE, JSON_THROW_ON_ERROR.
Смысл этих констант объясняется на странице JSON-констант.
depth
Устанавливает максимальную глубину. Должен быть больше нуля.
*/
$arr = array('a' => 1, 'b' => 2, 'c' => 3, 'd' => 4, 'e' => 5);
echo json_encode($arr);
?>