1
2
3
4
5
6
7
$storage = ABC::newService(ABC::STORAGE);
// Или расшареный
$storage = ABC::sharedService(ABC::STORAGE);
1 | add() | Помещает данные в хранилище |
2 | addArray() | Помещает в хранилище данные из массива |
3 | get() | Получает данные из хранилища по ключу |
4 | getByName() | Получает данные из хранилища по имени |
5 | all() | Получает все данные из хранилища |
6 | has() | Проверяет, есть ли в хранилище данные с таким именем и ключем |
7 | merge() | Добавляет данные к уже существующим |
8 | delete() | Удаляет из хранилища данные по указанному ключу и имени |
Помещает данные в хранилище.
Метод поместит данные в хранилище с оригинальным именем. Однако обратиться к этим данным можно по регистронезависимому имени. Если данные с таким адресом есть в хранилище, то они перезапишутся.
Если указать дополнительный ключ, данные будут упакованы в массив с именем ключа.
См. также addArray()
public Storage::add ( $name, $value, $key = null ) | ||
$name | string | Имя параметра. |
$value | mixed | Значение параметра. |
$key | string | Ключ второго уровня. |
return | void |
---|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
$storage = ABC::newService(ABC::STORAGE);
$test = 'Тестовые данные';
$storage->add('Test', $test);
var_dump($storage);
/*
object(ABC\ABC\Services\Storage\Storage)[24]
private 'names' =>
array (size=1)
'test' => string 'Test' (length=4)
private 'data' =>
array (size=1)
'Test' => string 'Тестовые данные' (length=29)
*/
$storage->add('Test', $test, 'data');
var_dump($storage);
/*
object(ABC\ABC\Services\Storage\Storage)[24]
private 'names' =>
array (size=1)
'data' =>
array (size=1)
'test' => string 'Test' (length=4)
private 'data' =>
array (size=1)
'data' =>
array (size=1)
'Test' => string 'Тестовые данные' (length=29)
*/
Помещает данные в хранилище из массива.
Если передать аргументом массив, данные будут помещены с именами, соответствующими ключам массива, и значениями, соответствующими этим ключам. Если данные с таким адресом есть в хранилище, то они перезапишутся.
Усли указать ключ второго уровня, данные инкапсулируются в массив с именем этого ключа.
См. также add()
public Storage::addArray ( $array, $key = null ) | ||
$array | array | Массив с параметрами. |
$key | string | Ключ второго уровня. |
return | void |
---|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
$storage = ABC::newService(ABC::STORAGE);
$test = ['First' => 'Первое значение',
'Second' => 'Второе значение'
];
$storage->addArray($test);
var_dump($storage);
/*
object(ABC\ABC\Services\Storage\Storage)[24]
private 'names' =>
array (size=2)
'first' => string 'First' (length=5)
'second' => string 'Second' (length=6)
private 'data' =>
array (size=2)
'First' => string 'Первое значение' (length=29)
'Second' => string 'Второе значение' (length=29)
*/
$storage->addArray($test, 'Key');
var_dump($storage);
/*
object(ABC\ABC\Services\Storage\Storage)[24]
private 'names' =>
array (size=1)
'Key' =>
array (size=2)
'first' => string 'First' (length=5)
'second' => string 'Second' (length=6)
private 'data' =>
array (size=1)
'Key' =>
array (size=2)
'First' => string 'Первое значение' (length=29)
'Second' => string 'Второе значение' (length=29)
*/
Получает данные из хранилища.
Метод извлекает данные из хранилища по регистронезависимому имени. Если данные хранятся с дополнительным ключем, нужно передать его вторым параметром.
public Storage::get ( $name, $key = null ) | ||
$name | string | Имя параметра. |
$key | string | Ключ второго уровня. |
return | mixed | Данные из хранилища |
---|
1
2
3
4
5
6
7
8
9
10
11
12
13
$storage = ABC::newService(ABC::STORAGE);
$test = ['First' => 'Первое значение',
'Second' => 'Второе значение'
];
$storage->addArray($test, 'Key');
$data = $storage->get('first', 'Key');
var_dump($data);
// string 'Первое значение' (length=29)
Получает данные из хранилища по имени.
Метод извлекает данные из хранилища по регистронезависимому имени. Если данные не найдены, вернет дефолтное значение, переданное вторым аргументом
public Storage::getByName ( $name, $default = null ) | ||
$name | string | Имя параметра. |
$default | mixed | Значение, возвращаемое при отсутствии данных в хранилище. |
return | mixed | Данные из хранилища или дефолтное значение |
---|
1
2
3
4
5
6
$data = $storage->getByName('Dummy', 'Дефолтное значение');
var_dump($data);
// string 'Дефолтное значение' (length=35)
Получает все данные из хранилища.
Метод извлекает все данные из хранилища в виде массива. Если указан ключ, то вернет все данные с этим ключем
public Storage::all ( $key = null ) | ||
$key | string | Ключ. |
return | mixed | Данные из хранилища |
---|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
$storage = ABC::newService(ABC::STORAGE);
$test = ['First' => 'Первое значение',
'Second' => 'Второе значение'
];
$storage->addArray($test, 'Key');
$data = $storage->all();
var_dump($data);
/*
array (size=1)
'Key' =>
array (size=2)
'First' => string 'Первое значение' (length=29)
'Second' => string 'Второе значение' (length=29)
*/
$data = $storage->all('Key');
var_dump($data);
/*
array (size=2)
'First' => string 'Первое значение' (length=29)
'Second' => string 'Второе значение' (length=29)
*/
Проверяет, есть ли данные в хранилище.
Вернет true, если данные есть, и false, если нет. Если указан ключ, поиск будет произведен в этом уровне.
public Storage::has ($name, $key = null ) | ||
$name | string | Имя параметра |
$key | string | Ключ |
return | boolean | Результат поиска (булево значение) |
---|
1
2
3
4
5
6
7
8
9
10
11
12
$storage = ABC::newService(ABC::STORAGE);
$test = ['First' => 'Первое значение',
'Second' => 'Второе значение'
];
$storage->addArray($test, 'Key');
var_dump($storage->has('First')); // boolean false
var_dump($storage->has('First', 'Key')); // boolean true
Добавляет данные к уже существующим.
Добавляет в массив с указанным ключем новые данные. Если данные с таким адресом есть в хранилище, то они перезапишутся.
public Storage::merge ( $name, $value, $key = null ) | ||
$name | string | Имя параметра |
$value | mixed | Значение |
$key | string | Ключ |
return | mixed | Void |
---|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
$storage = ABC::newService(ABC::STORAGE);
$test = ['First' => 'Первое значение',
'Second' => 'Второе значение'
];
$storage->addArray($test, 'Key');
$third = 'Третье значение';
$storage->merge('Third', $third, 'Key');
var_dump($storage);
/*
object(ABC\ABC\Services\Storage\Storage)[24]
private 'names' =>
array (size=1)
'Key' =>
array (size=3)
'first' => string 'First' (length=5)
'second' => string 'Second' (length=6)
'third' => string 'Third' (length=5)
private 'data' =>
array (size=1)
'Key' =>
array (size=3)
'First' => string 'Первое значение' (length=29)
'Second' => string 'Второе значение' (length=29)
'Third' => string 'Третье значение' (length=29)
*/
Удаляет данные из хранилища
Удалит из хранилища данные с указанным именем и ключем.
public Storage::delete ( $name, $key = null ) | ||
$name | string | Имя параметра |
$key | string | Ключ |
return | mixed | Void |
---|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
$storage = ABC::newService(ABC::STORAGE);
$test = ['First' => 'Первое значение',
'Second' => 'Второе значение'
];
$storage->addArray($test, 'Key');
$storage->delete('First', 'Key');
var_dump($storage);
/*
object(ABC\ABC\Services\Storage\Storage)[24]
private 'names' =>
array (size=1)
'Key' =>
array (size=1)
'second' => string 'Second' (length=6)
private 'data' =>
array (size=1)
'Key' =>
array (size=1)
'Second' => string 'Второе значение' (length=29)
*/