W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
您可以在任何地方,通過Yii::$service
,使用服務,譬如
Yii::$service->cart->coupon->addCoupon()
,就是用cart服務下面的子服務下面的
addCoupon()方法。
那么如何制作一個服務呢?下面是詳細的步驟:
1.首先定義一個類,繼承fecshop\services\Service
<?php
namespace appfront\services;
use Yii;
use yii\base\InvalidValueException;
use yii\base\InvalidConfigException;
use fecshop\services\Service;
class Test extends Service
{
public $name;
protected function actionGet(){
return $this->name ;
}
}
2.添加配置:
在@app\config\fecshop_local_services文件夾下面添加一個文件Test.php內(nèi)容為:
<?php
/**
* FecShop file.
* @link http://www.fecshop.com/
* @copyright Copyright (c) 2016 FecShop Software LLC
* @license http://www.fecshop.com/license/
*/
return [
'test' => [
'class' => 'appfront\services\Test',
'name' => 'terry',
]
];
然后,就可以執(zhí)行
echo Yii::$service->test->get();
,輸入為:terry
,
這個是上面的配置中的值,在test服務實例化的時候,name參數(shù)會被注入到
Test類的類變量name
中,這個和Yii2的component(組件)的原理類似。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: