文档章节

Symfony2框架实战教程

雍雍_yoyo
 雍雍_yoyo
发布于 2015/06/11 14:15
字数 1106
阅读 44
收藏 0
点赞 0
评论 0

Symfony2框架实战教程——第一天:创建项目

Symfony2的教程非常的详尽,但是却不太亲近新手。新手想要完全理解Symfony2文档的内容,需要对互联网开发有一定工作经验才行,否则总是有一种看不太明白,看完了也不不知道从哪儿开始的感觉。如果你有这种感觉,希望这篇文章能让你快速上手,本篇的目的,就是为了让Symfony2新手,甚至是PHP新手能快速开始一个具体的项目。

本篇系列重点是为了带领新手使用Symfony2框架,如果您想了解的是Symfony2组件,可阅读我翻译Symfony2项目组老大的系列教程《使用Symfony2组件创建自己的PHP框架》

本篇系列源代码位于 https://coding.net/u/chrisyue/p/symfony2-framework-tutorial/git,不过因为源代码已经包含各种添加修改重构之后的代码,看不到中间过程,建议在所有章节完成之后看,或者作为日后的参考。

准备工作

下载并安装PHP。Symfony2 要求运行在PHP5.3版本以上。不过随着PHP的版本提升,功能也越来越丰富,运行速度也有提升,所以我建议是最新的稳定版本。在PHP5.5里自带了web server,这意味着你甚至不需要Nginx或者Apache等服务就可以快速开始启动你的项目,所以没错,本教程就以PHP5.6(咦?难道不是5.5吗)为例子来讲解。

保证PHP在PATH目录里。

由于本篇主要阐述如何使用Symfony2快速开发项目。所以不阐述PHP的安装相关知识,这些知识点在网上都很容易查询到。

初始化项目

本篇教程我尽量按照Windows/*nix都可以运行的方式来讲解。

得益于Symfony2.6的Symfony installer,我们目前可以很方便的初始化一个Symfony2项目。首先,你得有一个Symfony installer。

随便创建一个目录:比如www,然后在此目录下先安装Symfony installer(注意$为命令提示符,只是为了好看,实际操作的时候是不需要输入$的,不再赘述):

$ php -r "readfile('http://symfony.com/installer');" > symfony.phar

然后运行以下命令确认文件可执行

$ php symfony.phar

如果文件无损坏,应该会显示symfony installer的版本号,以及如何使用symfony installer的简单介绍:

Symfony Installer (0.5.0)
=========================

This is the official installer to start new projects based on the
Symfony full-stack framework. To create a new project called blog in the current directory using the latest stable version of Symfony, execute the following command:

  $ symfony.phar new blog To base your project on a specific Symfony version, append the version number at the end of the command:

  $ symfony.phar new blog 2.5.6 Updating the Symfony Installer ------------------------------ New versions of the Symfony Installer are released regularly. To update your
installer version, execute the following command:

  $ symfony.phar self-update 

接下来,我们用symfony.phar来创建一个项目。这里我们打算做一个新闻聚合类网站,项目就叫news好了:

$ php symfony.phar new news

如果网络没有问题的话,应该会出现进度条,此时Symfony installer在当前目录创建了news目录,并且初始化好Symfony2框架的工作目录,以及下载所需要的第三方PHP库。

Downloading Symfony... 85.81 KB/4.89 MB ▓░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 1%

当下载完成后,进入news目录,我们可以看到Symfony installer为我们初始化的工作目录。这里我们可以把一些对开发来说没有必要的文件删除掉(UPGRADE-***,LICENSE,README.md)。

不出意外,我们便可以通过一下命令开启一个Web server监听在 localhost:8000上(注:此命令只能运行在PHP5.5版本之上):

$ php app/console server:start localhost:8000

在浏览器里访问http://localhost:8000,应该就可以看到Symfony Framework安装好之后的欢迎页面了

symfony acme

至此,Symfony2项目初始化工作已经完成

我们可以使用Symfony2框架自带的脚本工具,来确认当前的环境是否已经足够顺利运行Symfony:

$ php app/check.php

比如我这里显示的结果,推荐我安装intl扩展

screen shot symfony check console

另外我们也可以看到提示说因为命令行加载的php.ini可能和web服务器加载的不一样(常见的php-fpm一般都跟命令行下的php加载的不是同一个php.ini文件),建议在浏览器里查看/config.php复查一下。

symfony check web

本文转载自:http://www.chrisyue.com/symfony2-in-action-day-1.html

共有 人打赏支持
雍雍_yoyo
粉丝 11
博文 139
码字总数 52609
作品 0
大连
原创linux以及rails,symfony2,web前端等多部视频教程,感兴趣的朋友可以看下哦

原创rails和linux视频教程发布啦,54程序员最新原创视频教程包括基础系列(Linux服务器视频,php视频,前端视频,ruby视频),以及实战系列(Symfony2视频,CI框架视频)正在陆续更新中,请大家多多...

翁宇杰
2013/01/11
633
2
自己制作了一套symfony2视频教程和laravel4视频教程,分享一下

symfony2框架是PHP所有框架中最纷繁复杂,但也是最强大的框架,没有之一,zend framework2模仿symfony2,laravel4使用sf2作为底层,可想而知,symfony2是什么。自己一直在用symfony2进行各种项...

翁宇杰
2013/10/18
7.5K
10
symfony2的项目实战

用symfony2 + angularjs开发的大型项目,前期准备的多,开发量也很大,功能模块也很多,开发了一年还没有开发完成呀! client端是以 nodejs + angularjs + bootstrap等支持完成。 server端是...

AnJie-php
2013/11/03
335
0
2015 年最好的 PHP 框架调查统计

一个月前,我们就开始了一年一度SitePoint框架人气调查。现在月份已经到期, 这需要时间来看看结果。 共收到的回应是7800+个(项),至今远远超过其他任何以前开展的调查,甚至在过滤掉无效的...

phpmy56
2015/04/09
82.2K
83
2015年最好的PHP框架调查统计

2015年最流行的框架,Laravel框架获得赢家! 正如预期的那样,Laravel这次又一次高出了一大截。 有一些人可能会担心,部分框架分裂版本可能影响Laravel的调查结果,并给它一个不公平的优势,...

酱醋茶丶
2015/12/28
364
3
深入浅出Symfony2 - 如何提高网站响应速度

简介 Symfony2是一个基于PHP语言的Web开发框架,有着开发速度快、性能高等特点。但Symfony2的学习曲线也比较陡峭,没有经验的初学者往往需要一些练习才能掌握其特性。相对其他框架,Symfony...

丰圣谋
2013/07/30
0
1
Fanta/free-programming-books-zh_CN

免费的编程中文书籍索引 免费的编程中文书籍索引,欢迎投稿。 国外程序员在 stackoverflow 推荐的程序员必读书籍,中文版。 stackoverflow 上的程序员应该阅读的非编程类书籍有哪些? 中文版...

Fanta
2016/11/14
0
0
Symfony2 Cookbook (版本 2.7.0 LTS) 中文版

Symfony2 是一个基于 MVC 模式的面向对象的 PHP5 框架,有着开发速度快、性能高等特点。Symfony 的目的是加速 Web 应用的创建与维护。它的特点如下: 缓存管理 自定义 URLs 搭建了一些基础模...

起名字凡人
2015/11/24
992
3
介绍下php各种框架呗?

目前在做php开发,在用的框架主要是 symofny2,在学Yii 可是目前圈内各种框架实在太多了,但是不同框架肯定应用的场景不一样, 想听听各位的意见,学习分个先后。 多谢! 我先说自己知道的两...

bigTreee
2015/01/24
2.2K
5
开源电子书

目录 语言无关类 操作系统 智能系统 分布式系统 编译原理 函数式概念 计算机图形学 WEB服务器 版本控制 编辑器 NoSQL PostgreSQL MySQL 管理和监控 项目相关 设计模式 Web 大数据 编程艺术 ...

zting科技
2017/12/11
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

nginx负载均衡

一、nginx 负载均衡 拓扑图: 主机信息: 1、负载均衡器1(lb1):192.168.10.205 RHEL7.5 2、负载均衡器2(lb2):192.168.10.206 RHEL7.5 3、web服务器1(web01):192.168.10.207 Centos...

人在艹木中
昨天
0
0
Java Stream 简单使用

什么是流 Stream 不是集合元素,它不是数据结构并不保存数据,它是有关算法和计算的,它更像一个高级版本的 Iterator。原始版本的 Iterator,用户只能显式地一个一个遍历元素并对其执行某些操...

阿豪boy
昨天
0
0
做了一个小网站

做了一个小网站 www.kanxs123.com

叶落花开
昨天
0
0
继社会佩奇之后,又尝试了可爱的蓝胖子,有趣 Python

#哆啦A梦# !/usr/bin/env python3# -*- coding: utf-8 -*-# @Author: dong dong# @Env: python 3.6from turtle import *# 无轨迹跳跃def my_goto(x, y): penup(...

Py爱好
昨天
0
0
shell及python脚本方式登录服务器

一、问题 在工作过程中,经常会遇见需要登录服务器,并且因为安全的原因,需要使用交互的方式登录,而且shell、python在工作中也经常用到,并且可以提供交互的功能。都是利用了expect、spawn...

yangjianzhou
昨天
0
0
upstream sent too big header while reading...

nginx 报错:1736 upstream sent too big header while reading response header from upstream 1. 一般处理 location ~ \.php$ { #增加下面两句 fastcgi_buffer_size 128k; ......

dubox
昨天
0
0
Python解析配置文件模块:ConfigPhaser

import configparser as pa# [SectionA]# a = aa# b = bb# c = cc# [SectionB]# optionint = 1# optionfloat = 1.1# optionstring = string#https://www.cnblogs.com/a......

易野
昨天
0
0
Java基础——面向对象

声明:本栏目所使用的素材都是凯哥学堂VIP学员所写,学员有权匿名,对文章有最终解释权;凯哥学堂旨在促进VIP学员互相学习的基础上公开笔记。 Object的方法: clone() Object 克隆 to Strin...

凯哥学堂
昨天
0
0
rabbitmq学习记录(八)消息发布确认机制

RabbitMQ服务器崩了导致的消息数据丢失,已经持久化的消息数据我们可以通过消息持久化来预防。但是,如果消息从生产者发送到vhosts过程中出现了问题,持久化消息数据的方案就无效了。 Rabbit...

人觉非常君
昨天
0
0
大数据基础知识,大数据学习,涉及的知识点

一、什么是大数据 一种规模大到在获取、存储、管理、分析方面大大超出了传统数据库软件工具能力范围的数据集合,具有海量的数据规模、快速的数据流 转、多样的数据类型和价值密度低四大特征。...

董黎明
昨天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部