swoft(v2.0.8)之Bean容器踩坑

Bean容器代碼

<?php
namespace  App\Bean;
use Swoft\Bean\Annotation\Mapping\Bean;

/**
 *@Bean(name="User", scope=Bean::SINGLETON , alias="u")
 */
class  User
{


    private $name;
    private $age;




    public function  setName($name)
    {
            $this->name=$name;
    }





    public function getName()
    {

        return $this->name;
    }



    public function  setAge($age)
    {
        $this->age=$age;
    }


    public function  getAge()
    {
        return $this->age;
    }


    public function  toArray(){

        $data=[
            " name"=>$this->name,
             "age"=>$this->age
        ];
        return $data;
    }
}
控制器調用
<?php
namespace App\Http\Controller;
use App\Bean\User;
use Swoft\Bean\BeanFactory;
use Swoft\Http\Server\Annotation\Mapping\Controller;
use Swoft\Http\Server\Annotation\Mapping\RequestMapping;
use Swoole\Http\Response;


/**
 * @Controller()
 */

class TestController
{


    /**
     * @RequestMapping(route="/demo")
     */

    public function  demo()
    {
       $responnse=context()->getResponse();
       $request=context()->getRequest();

       $user=BeanFactory::getBean("u");


       $user->setName("Tom");
       $user->setAge(56);

        $result=json_encode(["code"=>0,"msg"=>"success","data"=>$user->toArray()]);
      return $responnse->withData($result);
    }
}

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章