《Symfony1.4_项目实战》项目介绍-17页精选文档.doc
《《Symfony1.4_项目实战》项目介绍-17页精选文档.doc》由会员分享,可在线阅读,更多相关《《Symfony1.4_项目实战》项目介绍-17页精选文档.doc(17页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、如有侵权,请联系网站删除,仅供学习与交流Symfony1.4_项目实战项目介绍【精品文档】第 17 页简介:Symfony框架是一个已经超过四年多的开源项目,并已成为最流行的PHP框架之一,这要得益于其强大的功能和良好的文档。本教程描述用symfony框架创建一个WEB应用。一步一步从规范到实施。它定位于学习symfony的新手,以及理解它如何工作,还有学习关于最佳的WEB开发实践。本来是打算做一个博客程序的。但我们要把symfony用在一个有用处的项目上。目的是要表明symfony可以轻松的开发专业应用,还有它的风格。我们给项目取个名字:Jobeet。学习本教程每一天会花1到2个小时,通过动
2、手编写代码从开始到结束做一个实际的网站。每天都会有新鲜东西增加到应用,我们还会利用本教程中的这次的开发来向你介绍symfony的功能以及symfony WEB开发的良好实践。今天做什么:我们不会写PHP代码,甚至不会写任何一行代码。今天你会理解到使用框架的好处,比如symfony。今天仅仅是引导一个新项目。今天的目标是设置开发环境,还有在浏览器中显示应用的一个页面。包括安装symfony,创建一个应用,还有配置WEB服务器。本教程主要讲symfony框架,我们假定你已经有了扎实的PHP5和OOP编程知识。准备工作:安装symfony之前,你需要检查你的电脑一切都安装好了,还有都配置好了。花时间
3、认真阅读今天教程所讲的内容,还有跟随所有安装需要检查你的配置,因为可以为你的下一天节省时间。第三方软件首先,你需要检查你的电脑有一个友好的WEB开发环境。至少,你需要一个WEB服务器(例如Apache),一个数据库引擎(MySQL、PostgreSQL、SQLite、或者一些兼容PDO的数据库引擎),还有PHP 5.2.4或者更高。命令行接口Symfony框架捆绑了一个命令行工具,自动为你做许多工作。如果你是一位类Unix OS用户,你会感觉到家了。如果你运行一个Windows系统,命令行同样工作的很好,你可以在命令行的提示下输入各种命令。-Unix shell命令可以在一个Windows环境
4、下派上用场。如果你想在Window上用比如tar、gzip、grep这样的工具,你可以安装Cygwin。也可以大胆的尝试Microsofts Windows Services for Unix。-PHP配置每种操作系统的PHP配置可能都有所不同,甚至不同的Linux发行版之间,你需要检查你的PHP配置满足PHP最低要求。首先,确保你运行phpinfo()内建函数或在命令行运行php -v查看版本号,满足PHP 5.2.4最低安装要求。在一些配置上要注意,你可能安装了两个不同的PHP版本:一个对于命令行,和另外一个对WEB。然后,在这个URL网址下载symfony配置检查器脚本:http:/sf
5、-to.org/1.4/check.php保存该脚本在你当前WEB根目录下任意地方。从命令行运行配置检查器脚本:$ php check_configuration.php如果你的PHP配置有问题,命令行会提示输出文字提示你要修改什么东西,还有要怎么修改。你也可以从一个浏览器中运行检查器,并能看到如何解决问题。因为PHP对于两种环境具有不同的php.ini配置,使用不同的设置。-不要忘记之后从你的WEB根目录中移除这个文件。-Symfony的安装初始化项目目录在安装symfony之前,你首先需要创建一个目录,保存所有Jobeet有关的文件$ mkdir -p /home/sfprojects/j
6、obeet $ cd /home/sfprojects/jobeet 或者在Windows平台上:c: mkdir c:developmentsfprojectsjobeet cd c:developmentsfprojectjobeet-建议Windows平台用户避免在诸如Documents and Settings目录和My Documents等带有空格的路径下使用symfony和搭建项目。-如果你symfony项目目录创建在WEB根目录下,你不需要配置你的WEB服务器。当然,对于生产环境,我们强烈建议你们配置你的web服务器这在web服务的配置环节部分已经做了解释。-选择Symfony的
7、版本现在,你需要安装symfony。symfony有几个稳定的版本,你需要先到symfony网站上仔细的阅读官方Installation(安装)页面,然后你就知道如何选择一个你所需要安装的版本。本教程假定你安装的是 symfony 1.3 或者 symfony 1.4 。选择Symfony的安装位置您可以安装symfony的在您的计算机上的任何地方,或将其嵌入到您的某个项目。但后者是我们推荐的,因为会与其他项目完全彼此独立。升级您的本地安装的symfony不会导致你的项目发生意外。这意味着你将能够有不同的版本symfony的项目,你可以升级你认为合适的一个。作为一个最佳实践,许多人安装symf
8、ony框架文件在项目的lib/vendor目录中。那么我们先创建这个目录:$ mkdir -p lib/vendor安装Symfony从一个归档安装最简单的方式安装symfony是从symfony网站上选择你需要的版本下载归档。到官方 Installation 页面下载你选择的版本,例如symfony1.4。在“Source Download”那一栏,你会看到.tgz或者.zip格式的归档。然后并下载下来,放在新创建的的lib/vendor/目录,解压,并重命名目录为symfony:$ cd lib/vendor$ tar zxpf symfony-1.4.0.taz$ mv symfony-
9、1.4.0 symfony$ rm symfony-1.4.0.tgz在Windows平台,用Windows资源管理器解压zip文件。你命名目录为symfony之后,目录结构则应该差不多像这样c:devsfprojectjobeetlibvendorsymfony。从Subversion安装(建议)如果你使用Subversion,用其svn:externals属性甚至能更好的用于将symfony嵌入到你项目的lib/vendor/目录:$ svn pe svn:externals lib/vendor/-在一个新的子版本库中导入你的项目,这会在本章的最后讲解。-如果一切顺利,此命令将运行你目前
10、编辑器给你的机会来配置外部的Subversion源。-在Windows平台上,你能用像TortoiseSVN这样的工具做一切事情而不需要用控制台。-如果你是保守的,你可以引导你的项目到一个特定的版本(一个subversion标签):symfony http:/svn.symfony-每当一个新版本推出时(会在官方symfony博客上宣布),你将需要更改URL地址到新的版本。如果你要时刻保持最新版本,则使用 1.4 branch:symfony http:/svn.symfony-使用branch的好处是,无论何时你只要运行一个svn update,则会自动修复symfony框架本身最新出现的B
11、UG。验证安装现在symfony安装完了,那么我检查一下是否好了,在symfony命令行里输入下面的命令(注意有大写的V),如果看到结果显示出了symfony版本,则表示一切都是正常的:$ cd ./. $ php lib/vendor/symfony/data/bin/symfony -V在Windows平台:c: cd . c: php libvendorsymfonydatabinsymfony V-如果你好奇命令行工具能为你做什么,直接打“symfony”字符,会列出可以用的选项和命令:$ php lib/vendor/symfony/data/bin/symfony在Windows平
12、台:c: php libvendorsymfonydatabinsymfonysymfony命令行是开发者最好的朋友。它提供了许多的实用工具,每一天的日常活动 ,如清除缓存,生成代码,并更加提高您的工作效率。-项目的设置在symfony里面,应用共享相同的数据模型重组进项目,你将会有两个不同的应用:一个前台和一个后台。项目的创建从sfprojects/jobeet目录,运行symfony的generate:project命令来实际创建symfony项目:$ php lib/vendor/symfony/data/bin/symfony generate:project jobeet在Windo
13、ws平台:c: php libvendorsymfonydatabinsymfony generate:project jobeetgenerate:project命令生成对于一个symfony项目所需要的默认文件、目录结构:目录描述apps/项目中包含的所有应用cache/由框架产生的缓存文件config项目配置文件lib/项目类库log/框架日志文件plugins/安装插件所在的目录test/单元和功能测试文件web/WEB根目录(见下文)-为什么symfony生成如此多的文件?使用一个full-stack框架主要好处之一是规范了你的开发。得益于symfony的默认文件和目录结构,任何有一
14、些symfony知识的开发者都能接手维护任何symfony项目。在几分钟内,他将能够深入进代码,修改BUG,并添加新功能。-generate:project命令还可以创建一个symfony快捷方式在项目根目录中,来缩短你运行一个命令时所拼写字符的数目。所以,从现在开始,你可以用symfony快捷方式,而不是使用全路径的symfony程序。应用的创建现在,通过运行generate:app命令创建前台应用:$ php symfony generate:app frontend-因为symfony快捷方式文件是可执行的,从现在开始Unix平台用户可以把所有有关php symfony替换为./symf
15、ony。在Windows平台,你可以拷贝symfony.bat文件到你的项目并使用symfony而不是php symfony:c: copy libvendorsymfonydatabinsymfony.bat-基于应用的名称作为一个参数,generate:app命令会在apps/frontend目录下创建默认所需的目录结构:目录描述config/应用的配置文件lib/应用的类库modules/应用的代码(MVC)templates/全局的模板文件安全性默认情况下,generate:app命令会确保我们的应用避免网络上发现的最普遍的两个漏洞。确切的说,symfony会自动开启我们的保安措施。为
16、了防止XSS攻击,输出转义会被开启;还有防止CSRF攻击,会生成一个随机的CSRF密钥。当然,你可以调整这些设置,通过下列选项: -escaping-strategy:激活或关闭输出转义 -csrf-secret:在表单中激活SESSION令牌如果你不知道关于 XSS(百度百科、英文维基) 或者 CSRF(百度百科、英文维基),花时间学习更多关于安全漏洞。目录结构的权限在访问你新创建的项目之前,你需要把cache/和log/目录适当的设置成适当的程度,以便WEB服务器能够写入:$ chmod 777 cache/ log/对SCM工具使用者的提示symfony一直只会在cache/和log/这
17、两个目录写入。这些目录的内容应该被你的SCM忽略(假如你使用subversion,则编辑svn:ignore属性)。WEB服务器配置:丑陋的方式如果你在你的WEB服务器的WEB根目录下某个地方创建了项目目录,你已经能在WEB浏览器中访问项目。当然,作为没有经过任何配置的,建起来很快,但在你的浏览器中尝试访问config/databases.yml文件,就会了解这样一个懒惰的态度的不良后果。如果用户知道你的网站是用symfony开发的,他可能会访问到一些敏感文件。永远不要在产品服务器上使用这种配置,并阅读下一节学习怎样正确的配置你的WEB服务器。简介Symfony框架是一个已经超过四年多的开源项
18、目,并已成为最流行的PHP框架之一,这要得益于其强大的功能和良好的文档。本教程描述用symfony框架创建一个WEB应用。一步一步从规范到实施。它定位于学习symfony的新手,以及理解它如何工作,还有学习关于最佳的WEB开发实践。本来是打算做一个博客程序的。但我们要把symfony用在一个有用处的项目上。目的是要表明symfony可以轻松的开发专业应用,还有它的风格。我们给项目取个名字:Jobeet。学习本教程每一天会花1到2个小时,通过动手编写代码从开始到结束做一个实际的网站。每天都会有新鲜东西增加到应用,我们还会利用本教程中的这次的开发来向你介绍symfony的功能以及symfony W
19、EB开发的良好实践。今天做什么我们不会写PHP代码,甚至不会写任何一行代码。今天你会理解到使用框架的好处,比如symfony。今天仅仅是引导一个新项目。今天的目标是设置开发环境,还有在浏览器中显示应用的一个页面。包括安装symfony,创建一个应用,还有配置WEB服务器。本教程主要讲symfony框架,我们假定你已经有了扎实的PHP5和OOP编程知识。准备工作安装symfony之前,你需要检查你的电脑一切都安装好了,还有都配置好了。花时间认真阅读今天教程所讲的内容,还有跟随所有安装需要检查你的配置,因为可以为你的下一天节省时间。第三方软件首先,你需要检查你的电脑有一个友好的WEB开发环境。至少
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Symfony1.4_项目实战 Symfony1 项目 实战 介绍 17 精选 文档
限制150内