位置: 编程技术 - 正文

使用symfony命令创建项目的方法(syms命令)

编辑:rootadmin

推荐整理分享使用symfony命令创建项目的方法(syms命令),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:smitty命令用法,sysedit命令,sysuse命令,sysedit命令,sysinfo命令,sysuse命令,sysuse命令,syms命令,内容如对您有帮助,希望把文章链接给更多的朋友!

本文实例讲述了使用symfony命令创建项目的方法。分享给大家供大家参考,具体如下:

概况

这一章节描述一个Symfony项目的合理结构框架,并且用 symfony 命令初始项目结构。

介绍

在symfony里,一个项目是一个指定域名下的一组服务和有效操作,共享相同的项目模型。

在一个项目里面,应用中的操作是一组逻辑;每个应用都可以正常的独立运行,与相同项目中的其他应用互不干涉。

在多数情况中,一个项目会包含两个应用,一个负责前台显示,一个负责后台处理,使用相同的数据库。当然你也可以在一个项目中包含很多小站点,每个站点都是一个不同的应用。注意在不同应用之间使用的超链接必须使用绝对路径。

每一个应用都是一组模块,每一个模块都负责一个特殊的功能。一个模块通常为了类似的功能而使用一个页面或一组页面。例如模块可以是home, articles, help, shoppingCart, account,等等。

模块的功能:每个模块都有它们各自的功能,例如 shoppingCart(购物车) 模块要有 添加(add), 展示(show) 和 更新(update) 功能。功能的行为可以看作一个典型web应用中的页行为。

如果一个新的项目的级别太多,那么可以很简单的把模块中的所有功能分组,这样做文件结构可以保持简单。当应用更加复杂的时候,可以在逻辑模块中组织功能。

每个应用都可以运行在不同的环境中,例如,不同的配置或数据库。一般来说每个新的应用都会运行在三个环境(开发,测试和最终产品)中。如果需要的话每个应用都可以运行在更多的环境中,在不同的环境中仅仅需要修改配置配件。

例如,一个测试环境中需要记录警告和错误,而一个最终产品环境将只需要记录错误。在开发环境中通常不开启缓存加速,而在测试和最终产品环境中需要开启。开 发环境和测试环境可能会需要测试用的数据,储存在最终产品的远程数据库中。所有的环境都可以在一台机器上共存,而通常产品服务器上只有最终产品环境。

注意:如果你是通过沙盒(sandbox)使用symfony,你不需要设置项目或应用,沙盒(sandbox)内部已经准备了一个名为'sf_sandbox'的项目和一个名为'frontend'的应用。你也不需要设置web服务器,只需要把你的程序放置在 web/ 根目录下。

Pake

SymFony使用专门的工具Pake去管理项目、应用和模块。Pake是一个php工具,类似于Rake命令(这是一个将 make 命令转换为Ruby的工具)。它会根据一个名为 pakefile.php 的特殊配置文件自动化一些管理任务。如果你使用 pake 工具代替了 symfony 命令行,所有的操作都会变得非常简单。

要得到所有有效的管理操作命令列表,只需要简单得在你的项目目录中输入:

CLI(命令行操作)的任务调度用于一个项目的前期阶段期间。一个关于CLI任务调度的完整说明参考CLI章节 。

项目设置

一切开始之前,你必须新建一个存放项目的目录:

然后,开始初始化项目生成原始文件和目录,简单的输入:

这是一个新创建的文件系统树结构的概况:

apps/batch/cache/config/data/doc/lib/log/test/web/

symfony 命令可以在当前项目的可用目录中随时调用。

应用设置

项目到现在还没有完成,它至少还需要一个应用。先使用 symfony init-app 命令初始化一个应用,用命令后跟的参数去命名这个应用的名称:

这样就在项目的根目录下的 apps/ 文件夹中创建了一个 myapp 目录,其中包含了用于你站点的一个默认应用配置和一组目录文件:

apps/ myapp/ config/ in/ lib/ modules/ templates/

一些充当各自默认环境中的前端控制器的php文件也被创建在项目根目录的web目录下:

web/ index.php myapp_dev.php

使用symfony命令创建项目的方法(syms命令)

index.php是production新应用程序的前端控制器。因为你创建这个项目中的第一个应用程序时,Symfony创建了一个调用 index.php的文件,例如 myapp.php (如果你现在添加一个名为 mynewapp 的新应用程序,新产品的前端控制器将被命名为mynewapp.php)。在 开发环境中运行程序时,调用前端控制器 myapp_dev.php。

注意:你如果仔细阅读了介绍,你可能会对myapp_test.php文件的位置感到意外。事实上,测试 环境是用于对你的应用程序的构件进行单元测试,它不需要前端控制器。可以参考单元测试章节去了解更多详细内容。

从现在开始,/home/steve/myproject/ 目录将会作为项目的根目录。根目录的路径已经被保存为 SF_ROOT_DIR 常量,定义在 index.php 文件中,并且我们将会用这个常量名代替实际路径以避免把不叫Steve的读者搞糊涂了(译者注:因为作者将项目放在/home/steve /myprojetc的目录下,这个路径每个人可能都不尽相同,所以使用常量SF_ROOT_DIR来代替了实际路径)。

Web服务器设置

为了访问和测试新的应用程序,需要配置web服务器。这有一个Apache的例子,在 httpd.conf 配置文件中加入一个新的虚拟主机:

注意:上面的配置中的 $data_dir 变量需要替换成你的PEAR库目录。例如:在*nix系统中,你可以输入:

你可以在安装章节找到更多关于PEAR目录的信息。

重启Apache服务之后,就可以看到调用新创建的应用程序的页面,只需要在一个标准的web浏览器的地址栏输入下列路径:

mod_rewrite 模块。如果你的Apache版本没有将 mod_rewrite 模块编译进去,那么需要在 httpd.conf 中检查模块mod_rewrite是否是动态模块方式(DSO)安装的,并且确认是否已经打开(译者注:关于Apache的mod_rewrite模块安 装和使用方法请参考Apache相关文档,这里假设读者已经具备这方面知识而不作过多说明):

你可以在路由(routing)章节了解更多关于简短路径(smart urls)的信息。

Symfony 兼容其它服务器配置方式。你也可以,例如,用别名(alias)代替虚拟主机访问symfony应用程序。若需要了解更多关于web服务器配置信息,请查阅相关章节。

模块设置

你这个新的应用程序并不出众,它缺乏吸引人的功能。如果你想增加功能性,你需要在在其中用到模块。这里再一次用到了 symfony 命令,参数为 init-module ,后面跟着应用程序名称和新模块的名称:

创建以后的树结构如下:

modules/ mymodule/ actions/ config/ lib/ templates/ validate/

新模块直接可以被使用:

myapp/modules/mymodule/templates/indexSuccess.php 输入:

Hello, world !

保存它,刷新刚才的页面就可以看到内容!

源文件版本控制(Source versioning)

应用程序设置完成之后,建议开始进行源文件版本控制。Symfony从一开始就支持CVS(译者注:版本控制系统),建议使用Subversion(译者注:一个版本控制系统软件,采用CVS 的运作模型, 并以取代CVS 为目标)。下面的例子列出了一些Subversion的命令,用于从在一个安装了Subversion的服务器上创建一个新项目的"仓库"(译者注:repository,源代码储存的地方)。对于Windows用户,建议客户端使用TortoiseSVN。关于源文件版本控制的更多信息和命令用法,请参考Subversion文档。

下面的例子假设$SVNREP_DIR是一个已经定义的环境变量。如果你还没有定义它,你需要用"仓库"的实际路径代替$SVNREP_DIR变量。

现在让我们开始创建myproject项目的新"仓库":

然后用下面这串命令创建新"仓库"的基本组织结构(规划),其中包含 trunk, tags 和 branches 三个目录:

[code]$ svn mkdir -m "layout creation" /home/steve/myproject 的目录中所有的文件都已经被"仓库"记录。要做到这一点,首先重命名 myproject 目录名,当一切运行正常的时候可以删除它,并且在新目录中向"仓库"提交一个checkout:

现在你可以在 /home/steve/myproject/ 目录下的文件中工作,并且提交修改到"仓库"中。不要忘记作一些清理和删除myproject.origin目录,它现在没有用了。

还有一些另外的设置。当你向"仓库"中提交工作目录时,会复制一些多余的文件,像项目中 cache 和 log 目录下的文件。因此你需要针对这个项目在svn中指定一个忽略列表。你也需要重新将 cache/ 和 log/ 目录的权限设置为完全控制,在访问时产生的文件SVN将不会储存:

这将调用在SVN中设置的默认的文本编辑器。如果没有生效,就像下面这样设置subversion首选的编辑器:

直接在SVN中的忽略列表中加入myproject子目录,这样提交的时候就忽略了:

保存然后退出,这样就完成了。

希望本文所述对大家基于Symfony框架的PHP程序设计有所帮助。

Symfony核心类概述 本文讲述了Symfony核心类。分享给大家供大家参考,具体如下:Symfony的核心类Symfony的MVC方式使用了一些你以后会经常碰到的类1.sfController是控制器,他解

Symfony控制层深入详解 本文深入分析了Symfony控制层。分享给大家供大家参考,具体如下:Symfony中控制层包含了连接业务逻辑与表现的代码,控制层为不同的使用分成了几个不

编写PHP程序检查字符串中的中文字符个数的实例分享 有时候我们需要计算一个字符串中包含的字数,对于纯英文字符串,字数等于字符串长度,用strlen函数即可获得,但如果字符串中包含中文怎办?mb_strle

标签: syms命令

本文链接地址:https://www.jiuchutong.com/biancheng/290978.html 转载请保留说明!

上一篇:Symfony2框架创建项目与模板设置实例详解(symfony是最好的框架)

下一篇:Symfony核心类概述(核心概念英文翻译)

  • 什么是销项税额抵减
  • 出口退税购入的商品进项税怎么处理
  • 工人工资算生产总值吗
  • 关税消费税增值税计算公式
  • 更正个税申报需要做账吗
  • 乙方向甲方开具增值税专用发票
  • 备用金为什么会变少
  • 小规模未达起征点销售额是多少
  • 印花税小于1元显示无需申报
  • 并购投资的方式有哪些
  • 企业转让未入账怎么办
  • 公司美元账户收到美元要交税吗
  • app 开发公司的账务处理
  • 股权拍卖溢价部分如何做会计处理?
  • 法人转钱到公户是借款还是投资款
  • 会计档案的概念和内容
  • 计提未发放的工资是否交个税
  • 文化事业建设费的征收范围
  • 房地产企业各个阶段所涉及的税种
  • 企业将自产产品发放给职工作为福利
  • 外贸企业增值税表二填写流程
  • 财务每月需要报哪些税
  • 企业所得税汇算清缴网上申报流程
  • 建筑安装服务费可以抵扣进项税吗
  • 社保基数如何计算单位和个人承担多少
  • 公司处理陈旧物怎么处理
  • 公司买的理财产品怎么做账
  • 交通费用扣除标准
  • 以库存现金支付车间发生的水电费200元
  • 第三方检测公司有前途吗
  • 应交税费进项税额在借方说明什么
  • win10系统修改密码
  • ftp指什么
  • mplugin.exe是什么
  • 索尼体积最小的微单
  • 手续费及佣金扣除标准
  • 金融保险业的营业税率为
  • 印度活根桥 (© dhritipurna/Shutterstock)
  • 固定资产减少的账务处理
  • 小规模企业要交哪些税种
  • php array_fill
  • 收到预付购货款
  • 个体生产经营所得优惠政策
  • 进项税额加计扣除5%账务处理
  • 用python创建一个列表
  • 长期股权投资种类
  • 大巴车怎么坐车
  • 消费税和资源税何时计入成本,何时计入费用
  • 无法偿付的应付账款计入什么科目政府会计
  • 小规模申报表填写
  • 企业缴纳的住房公积金的税率
  • 固定资产清理增值税计税依据
  • 公司送客户的礼品账务处理
  • 营改增后建筑业分公司账务
  • 已经计提的坏账收回了怎么做
  • 发票 发票专用章
  • 员工福利费怎么做账
  • MySQL必知必会读后感
  • mysql导出语句
  • mysql mac安装教程
  • win7自动变成win10
  • win7 64位系统关机按钮不见了怎么找回 win7关机按钮设置步骤
  • 哪个是win8.1更新win10的补丁
  • 丢失msvcp71.dll
  • 笔记本xp无线网络连接禁用启用不了
  • ubuntu20.04怎么用
  • win7 用户组
  • win8电脑屏幕亮度调节在哪里设置
  • powershow是什么意思
  • javascript中的数组可以存放任何类型的数据
  • py常用函数
  • 深入理解python特性pdf百度云
  • cocos2dx schedule
  • shell脚本实现自动部署
  • css expression 隔行换色
  • js的异步解决方案有哪些
  • jquery选择器的分类有哪些
  • 利用python进行
  • 吉林省国家税务局官网
  • 福利费是否计入成本费用
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设