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

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

1.symfony 的安装与配置

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

2.经过 composer 建立 symfony 应用

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

安装好 composer 后,经过 composer 建立一个 symfony 应用浏览器

 

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

 

若是你想安装指定版本的 symfony ,能够在命令最后补充版本号app

 

$ 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.18composer

 

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

 

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

能够参考:https://symfony.com/doc/current/setup.html#book-installation-permissionsspa

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

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

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

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

下面的代码是我本身修改过的

 

 
 
<?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>' ); } }

 

目前我就理解到这些,之后有学到新的再更新,若是有大佬教教个人话天然是再好不过了。

相关文章
相关标签/搜索