关于使用 symfony 3.4.32中Luckynumber 页面的 route 书写

关于symfony 3.4.32的安装与配置及第一个页面Luckynumber 的route书写

1.symfony 的安装与配置

symfony官网文档:https://symfony.com/doc/current/setup.html

2.通过 composer 创建 symfony 应用

我是通过 composer 来创建一个 symfony 应用的(关于 composer 可自行网上搜索)

安装好 composer 后,通过 composer 创建一个 symfony 应用

$ composer create-project symfony/framework-standard-edition my_project_name

如果你想安装指定版本的 symfony ,可以在命令最后补充版本号

$ composer create-project symfony/framework-standard-edition my_project_name "3.0.*"

3.运行 symfony 应用

安装好后就要运行一下运行环境要求 PHP 版本在 5.4 及以上,才可以执行下面命令来启动 Symfony 应用我是安装了集成软件 Wamposerver 其中包括了 PHP、Apache、MySQL,我选择的 PHP 版本是 7.2.18

$ cd my_project_name/
$ php bin/console server:run

然后打开浏览器,输入 http://localhost:8000/ 即可看见 Welcome 页面。
你也许会看到 Welcome 页面是个空白页面或者报错页面。

可以参考:https://symfony.com/doc/current/setup.html#book-installation-permissions

3.创建一个页面:路由和控制器

跟着官网文档第一个页面是做 Luckynumber 
就是创建一个页面 /lucky/number 用来生成一个幸(sui)运(ji)数并打印出来。

首先创建一个类和一个成员方法。
PhpStorm 中打开前面创建的 my_project_name

具体的文件位置和命名空间根据实际情况而定

下面的代码是我自己修改过的

 
 
<?php

// 文件位置 src/AppBundle/Controller/LuckyController.php
namespace AppBundle\Controller;

use Symfony\Component\HttpFoundation\Response;

class LuckyController
{
public function number() { $number = rand(0, 100); return new Response( '<html><body>Lucky number: '.$number.'</body></html>' ); }
}

文档上是在 config/routes.yaml file 创建 route ,但我自己做的时候,自己尝试创建 routes.yaml file 并将下列代码附上去的时候是没有成功的,

当我慢慢看文档后面的内容时就将文件位置改为了 routing.yml file 加上下列代码就成功了。

这是一种 route 书写方法:

app_lucky_number:
    path: /lucky/number
    controller: AppBundle\Controller\LuckyController::number

另一种如下所示:

<?php

//  src/AppBundle/Controller/LuckyController.php
namespace AppBundle\Controller;

use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
use Symfony\Component\HttpFoundation\Response;


class LuckyController
{
    /**
     * @Route("/lucky/number")
     */
    public function number()
    {
        $number = rand(0, 100);

        return new Response(
            '<html><body>Lucky number: '.$number.'</body></html>'
        );
    }
}

目前我就理解到这些,以后有学到新的再更新,如果有大佬教教我的话自然是再好不过了。

 

猜你喜欢

转载自www.cnblogs.com/luckynumber1123/p/11688441.html