大局

大局

在10分钟内开始使用Sy欧宝娱乐app下载地址mfony !真的!这就是你所需要理解的最重要的概念,并开始构建一个真正的项目!

如果您之前使用过网络框架,则应在家中感受到与symfony的感觉。欧宝娱乐app下载地址如果没有,欢迎各种开发Web应用程序的新方法。欧宝娱乐app下载地址symfony.拥抱最佳实践,保持向后兼容性(是的!升级始终安全和轻松!)并提供长期支持。

下载Symfony欧宝娱乐app下载地址

首先,确保已经安装作曲家PHP 7.1.3或更高版本。

准备好?在终端中,运行:

1
美元作曲人创建项目symfony/skeleton 欧宝娱乐app下载地址quick_tour

这会创建一个新的quick_tour /一个小型但强大的Symfony新应用程序:欧宝娱乐app下载地址

1 2 3 4 5 6 7 8 9 10 11
├─4(2)——环境整理www.lz13.cnjson├─作曲家。锁├─配置/├─公共/ index . php├─src /├─symfony。欧宝娱乐app下载地址├─生物化学(2)─生物化学(3)─生物化学(3

我们已经可以在浏览器中加载项目了吗?是的!你可以设置Nginx或Apache并将其文档根配置为公共/目录中。但是,为了发展,最好安装Symfony本地w欧宝娱乐app下载地址eb服务器并按如下方式运行:

1
美元欧宝娱乐app下载地址symfony服务器:启动

通过前往尝试新的应用程序http:// localhost:8000在浏览器!

. . / _images / no_routes_page.png

基本原理:路线,控制器,响应

我们的项目只有大约15个文件,但它已经准备好成为一个时髦的API,一个健壮的web应用程序,或一个微服务。欧宝娱乐app下载地址Symfony开始时规模很小,但你的规模很大。

但是在我们深入之前,让我们通过构建我们的第一页来深入了解基本原理。

开始配置/ routes.yaml:这就是我们可以将URL定义为我们的新页面。取消注释该文件中已生存的示例:

1 2 3 4
#配置/ routes.yaml指数:路径:/控制器:'app \ controller \ defaultController :: index'

这叫做路线:它定义了到你页面的URL (/)和“控制器”功能当任何人访问这个URL时,它将被调用。这个函数还不存在,所以让我们创建它!

SRC / Controller.,创建一个新的defaultController.班级和一个指数方法内部:

< ?php/ / src /控制器/ DefaultController.php命名空间App \控制器;欧宝娱乐app下载地址Symfony \ HttpFoundation \ \组件响应;defaultController.{上市功能指数(){返回新的回复(“你好!”);}}

就是这样!试着进入主页:http:// localhost:8000 /。欧宝娱乐app下载地址Symfony看到URL与我们的路由匹配,然后执行新路由index ()方法。

控制器只是一个正常功能一个规则:它必须返回Symfony欧宝娱乐app下载地址回复对象。但是这个响应可以包含任何内容:简单的文本、JSON或完整的HTML页面。

但是路由系统是更强大。所以让我们让这条路线更有趣:

1 2 3 4 5
#配置/ routes.yaml指数:-路径:/+路径:/ hello /{名称}控制器:'app \ controller \ defaultController :: index'

此页面的URL已更改:它是现在/ hello / *:{名称}充当匹配任何内容的通配符。而且还会更好!也更新控制器:

12 3 4 5 6 7 8 9 10 11 12 13 14 15
< ?php // src/Controller/DefaultController.php命名空间App\Controller;组件使用欧宝娱乐app下载地址Symfony \ \ HttpFoundation \反应;类DefaultController {- public function index()+公共功能索引($名称){-返回新的响应('Hello!');+返回新的响应("Hello $name!");}}

通过转到http://localhost:8000/hello/欧宝娱乐app下载地址Symfony。您应该看到:Hello Symfony!欧宝娱乐app下载地址的价值{名称}在URL中可用作美元的名字您的控制器中的参数。

但这可以更简单!让我们安装注释支持:

1
美元作曲家需要注释

现在,通过添加#性格:

1 2 3 4
#配置/ routes.yaml# 指数:#路径:/ hello /{名称}#cleter:'app \ controller \ defaultController :: index'

相反,添加路线正上方控制器方法:

12 3 4 5 6 7 8 9 10 11 12 13 14 15 16
< ?php // src/Controller/DefaultController.php命名空间App\Controller;组件使用欧宝娱乐app下载地址Symfony \ \ HttpFoundation \反应;+使用Sym欧宝娱乐app下载地址fony \ Component \ Routing \ Annotation \ Route;类DefaultController {+ / * *+ * @route(“/ hello / {name}”)+ * /Public function index($name){//…}}

这就像以前一样工作!但是通过使用注释,路由和控制器彼此相邻。需要另一个页面?添加另一个路线和方法defaultController.:

< ?php/ / src /控制器/ DefaultController.php命名空间App \控制器;欧宝娱乐app下载地址Symfony \ HttpFoundation \ \组件响应;欧宝娱乐app下载地址Symfony组件\ \路由\注释\路线;defaultController.{/ /……/ **简单* @Route(“/”)* /上市功能简单的(){返回新的回复(“简单!”简单!太好了!”);}}

路由可以做甚至更多,但我们会省去另一个时间!现在,我们的应用程序需要更多功能!像模板引擎,日志记录,调试工具等。

保持阅读Flex:编写应用程序

这项工作包括代码样本,是在a下获得的许可创作共用BY-SA 3.0许可证。