/ / Yii2 Basic - Как да използвам общата функционалност на функцията yii2 - yii, yii2, yii2-advanced-app, yii-компонентите, yii2-basic-app

Yii2 Basic - Как да използвам общата функционална функционалност в yii2 действие - yii, yii2, yii2-advanced-app, yii-компоненти, yii2-basic-app

Аз съм нов за YII използвате yii2 основни.всъщност искам да знам Как да се обадя на обща функция от действието на същия контролер. Да предположим, че съм в действие А за изпращане на поща. Трябва да позвъня на функцията за изпращане на поща B с три параметъра, която връща някаква стойност. Името на контролера ми е "Клиентски контролер". Как ще изпълня това. Моля, кажете ми решение. Благодаря

Отговори:

2 за отговор № 1

За yii2, първо Направете папка, наречена "компоненти" в основната папка на проекта.

След това напишете своя персонализиран компонент в папката на компонентите, т.е. MyComponent.php или нещо такова.

namespace appcomponents;

use Yii;
use yiibaseComponent;
use yiibaseInvalidConfigException;

class MyComponent extends Component
{
public function MyFunction($param1,$param2){
return $param1+$param2; // (:)
}
}

Сега добавете компонента си в конфигурационния файл.

"компоненти" => [

     "mycomponent" => [

"class" => "appcomponentsMyComponent",

],
]

Достъп в приложението ви:

Yii::$app->mycomponent->MyFunction(4,2);

0 за отговор № 2

Ако тя е споделена само в контролера, можете просто да създадете функция вътре в нея. Компонентите в Yii2 трябва да се използват за целите на приложението (да се споделят между повече от един контролер).

  private function myFunction(a, b){
return a+b;
}

И тогава го извикайте отвсякъде в контролера си

public function actionSomeAction(){
if(myFunction(1,2)>4){...}
}

Също така идеите на компонента са да има повече функционалност, която е просто функция, например да има поведение на всички потребители.