关于使用 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>' ); } }
目前我就理解到这些,以后有学到新的再更新,如果有大佬教教我的话自然是再好不过了。