uopz_set_mock
Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.
uopz_set_mock
Референца за `function.uopz-set-mock.php` со подобрена типографија и навигација.
uopz_set_mock
(PECL uopz 5, PECL uopz 6, PECL uopz 7)
uopz_set_mock — Користи mock наместо класа за нови објекти
= NULL
Враќа mock е стринг што содржи име на класа тогаш ќе биде инстанцирана наместо
class. mock може да биде и објект.
Забелешка:
Само динамичен пристап до својства и методи ќе користи
mockобјект. Статичкиот пристап сè уште го користи оригиналниотclass. Види example below.
Параметри
class-
Име на класата што треба да се мокира.
mock-
Mock што треба да се користи во форма на стринг што содржи име на класата што треба да се користи или објект. Ако се помине стринг, тој мора да биде целосно квалификувано име на класа. Се препорачува да се користи
::classмагична константа во овој случај.
Вратени вредности
Не се враќа вредност.
Дневник на промени
| Верзија | = NULL |
|---|---|
| PECL uopz 6.0.0 | Мокирањето на статички членови повеќе не е поддржано од оваа функција. uopz_redefine() and uopz_set_return(), или Компонирај може да се користи наместо. |
Примери
Пример #1 uopz_set_mock() example
<?php
class A {
public function who() {
echo "A";
}
}
class mockA {
public function who() {
echo "mockA";
}
}
uopz_set_mock(A::class, mockA::class);
(new A)->who();
?>Пример #1 Пример што покажува затворачка ознака што го опфаќа последниот нов ред
mockA
Пример #2 uopz_set_mock() example
<?php
class A {
public function who() {
echo "A";
}
}
uopz_set_mock(A::class, new class {
public function who() {
echo "mockA";
}
});
(new A)->who();
?>Пример #1 Пример што покажува затворачка ознака што го опфаќа последниот нов ред
mockA
Пример #3 uopz_set_mock() и статички членови
Од uopz 6.0.0 мокирањето на статички членови повеќе не е поддржано.
<?php
class A {
const CON = 'A';
public static function who() {
echo "A";
}
}
uopz_set_mock(A::class, new class {
const CON = 'mockA';
public static function who() {
echo "mockA";
}
});
echo A::CON, PHP_EOL;
A::who();
?>Пример #1 Пример што покажува затворачка ознака што го опфаќа последниот нов ред
A A
Излез од горниот пример во uopz 5:
mockA mockA
Види Исто така
- uopz_get_mock() - Добијте го тековниот лажен објект за класа
- uopz_unset_mock() - Откажи претходно поставена лажна вредност