关于使用 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(, ); 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(, ); return new Response(
'<html><body>Lucky number: '.$number.'</body></html>'
);
}
}
目前我就理解到这些,以后有学到新的再更新,如果有大佬教教我的话自然是再好不过了。
关于使用 symfony 3.4.32中Luckynumber 页面的 route 书写的更多相关文章
- java中jsp页面的css资源定位---备忘录
1:同级目录下(应该是相对定位) web-inf下的内容是不对外开放的/安全的,不能通过url直接访问.已避免非法人员通过url自己操作一些比较私密的文件信息. 能在sevlet(或者spring的c ...
- 高并发分布式系统中生成全局唯一(订单号)Id js返回上一页并刷新、返回上一页、自动刷新页面 父页面操作嵌套iframe子页面的HTML标签元素 .net判断System.Data.DataRow中是否包含某列 .Net使用system.Security.Cryptography.RNGCryptoServiceProvider类与System.Random类生成随机数
高并发分布式系统中生成全局唯一(订单号)Id 1.GUID数据因毫无规律可言造成索引效率低下,影响了系统的性能,那么通过组合的方式,保留GUID的10个字节,用另6个字节表示GUID生成的时间(D ...
- 获取Excel工作薄中Sheet页(工作表)名集合
#region 获取Excel工作薄中Sheet页(工作表)名集合 02./// <summary> 03./// 获取Excel工作薄中Sheet页(工作表)名集合 04./// < ...
- SQLServer中的页如何影响数据库性能 (转)
无论是哪一个数据库,如果要对数据库的性能进行优化,那么必须要了解数据库内部的存储结构.否则的话,很多数据库的优化工作无法展开.对于对于数据库管理员来说,虽然学习数据库的内存存储结构比较单调,但是却是我 ...
- JavaScript写在Html页面的<head></head>中
JavaScript写在Html页面的<head></head>中 ----------------- <html> <head> <style ...
- 如何将页面的<br/>在Excel中正确换行
在页面的<br />导致导出Excel中是会以多行的方式显示,达不到页面在一个单元格中进行换行,为此我们有以下两种方式: 1.CSS样式方式 <br style='mso-data- ...
- 要在一般处理程序中获取其他页面的session值
1.要在一般处理程序中获取其他页面的session值,需要引用名空间: using System.Web.SessionState; 2.然后继承一个接口:IRequiresSessionState, ...
- 坑爹的vector iterators incompatible错误(VS中属性页-->C/C++-->代码生成-->>运行库)
之前一直被这个错误折磨着,就是不知道问题在那,后来找了很多资料,大概都是说这是因为多个线程同时操作vector的问题(参考这里).可是我这里的代码并没有问题,因为同样的代码在别的解决方案中已经成功运行 ...
- 转载: js jquery 获取当前页面的url,获取frameset中指定的页面的url(有修改)
转载网址:http://blog.csdn.net/bestlxm/article/details/6800077 js jquery 怎么获取当前页面的url,获取frameset中指定的页面的ur ...
随机推荐
- bootstrap table插件动态加载表头
这篇文章主要为大家详细介绍了bootstrap table插件动态加载表头,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 bootstrap的table属性已经很熟悉了,最近遇到一个问题,犹豫 ...
- ORACLE数据库特性
目录 ORACLE数据库特性 一.学习路径 二.ORACLE的进程情况 三.ORACLE服务器的启动和关闭 (SQLPLUS环境挂起和恢复等) 连接Oracle的几种方式 四.几个关注点 1. ORA ...
- 系统假死——系统频繁Full gc问题分析
主要可能的原因: 1,eden区太小,eden和survivor默认比例是8:12,old区太小,新生代和老年代的比例也可以调节的.3,是否程序会分配很多短期存活的大对象,程序本身是否有问题? 进入老 ...
- 巧用 CSS 实现酷炫的充电动画
循序渐进,看看只使用 CSS ,可以鼓捣出什么样的充电动画效果. 画个电池 当然,电池充电,首先得用 CSS 画一个电池,这个不难,随便整一个: 欧了,勉强就是它了.有了电池,那接下来直接充电吧.最最 ...
- receipt
receipt - 必应词典 美[riˈsiːt]英[rɪ'siːt] n.收据:收入:接受:字据 v.开收据 网络收到:收条:发票 变形复数:receipts: 搭配give receipt:sig ...
- vue子组件数据变化同步到父组件中
方法:通过watch监听子组件数据变化 1.父组件中注册方法 <Child @getChildValue="getChildValue"></Child> ...
- ffmpeg编译错误,提示找不到相应的shared libraries :libavdevice.so.53
解决方法:需要配置响应的环境变量,以便能找到响应的lib库 vi /etc/ld.so.conf 加入 /usr/local/lib 执行 sudo ldconfig
- Javascript中的String.format方法实现
<script type='text/javascript'> String.format = function() { var s = arguments[0]; for (var i ...
- [原]将BITMAPINFO保存成bmp文件,以及渲染到设备
/* class Image { public: Image() = delete; Image(const uint32_t& _w, const uint32_t& _h) :w( ...
- 代替ESXI的虚拟机解决方案proxmox
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明.本文链接:https://blog.csdn.net/matengbing/article/de ...