免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2678 | 回复: 0
打印 上一主题 下一主题

使在cmd命令符下找到php命令 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-11-14 16:49 |只看该作者 |倒序浏览
本帖最后由 cu_Cbear 于 2011-11-14 16:50 编辑

使在cmd命令符下找到php命令





打开“我的电脑”->“属性”->“高级”->“环境变量”->“系统变量”->“path”,编辑其值,在前面
增加下面的路径地址:
D:\wamp\bin\php\php5.3.0 ===========php编译安装目录
将php.ini复制到C:\Windows 目录下


==================================================================================symfony简单的建程序
将下载好的symfony压缩包解压缩到www文件夹下起名symfony
命令行输入
e:打开E盘根目录
cd..\.. ===========返回上两级,或打开指定目录
cd wamp\www\symfony ===========打开指定目录
php data\bin\symfony -V ===========查询symfony版本信息
php data\bin\symfony generate:project newProject ===========在www\symfony文件夹下生成一个名叫newProject的新项目
php data\bin\symfony generate:app myApp ===========在该项目的APPS文件夹下生成一个名叫myApp新程序
php data\bin\symfony generate:module myApp myModule ===========在myApp程序文件夹下建立一个名叫myModule的新模块
php调用的symfony命令打开的是相对当前目录存放symfony命令的目录
在动作类中写的动作方法与对应模板的访问路径 mymodule模块名 myAction动作方法名
http://localhost/symfony/web/myApp_dev.php/mymodule/myAction
symfony学习网站
http://www.symfony-project.org/jobeet/1_2/Propel/zh_CN/01


==================================================================================OpenPNE 安装
  1. 将下载好的压缩包解压缩到服务器目录
  2. 查找 ProjectConfiguration.class.php.sample改名成ProjectConfiguration.class.php
  3. Apache服务打开rewrite模块
  4. cmd命令符下打开openPNE所在文件夹,输入
  5. php symfony openpne:install
  6. PHP的APC扩展:如有需要将115中的php_apc.dll下载到wamp\bin\php\php5.3.0\ext目录下
  7. 打开php扩展的php_apc,打开php.ini,找到extension=php_apc.dll并在下一行添加
  8. apc.enabled=0
  9. apc.shm_segments=0
  10. apc.enable_cli=0
复制代码
  1. ==================================================================================创建一个程序
  2. cmd输入
  3. php symfony opGenerate:plugin opVotePlugin ===========创建一个vote插件程序
  4. php symfony opGenerate:app opVotePlugin pc_frontend ===========为vote插件程序创建电脑前台文件夹
  5. php symfony opGenerate:module opVotePlugin pc_frontend vote ===========在vote插件程序电脑前台文件夹内创建vote模块
  6. php symfony cc ===========清除一次缓存
复制代码
此时可以通过http://localhost/openpne/web/vote来访问刚建立插件模块的默认index动作页
  1. ==================================================================================action动作及访问权限
  2. 在plugins\opVotePlugin\lib\actions目录下创建一个opVotePluginVoteActions.class.php文件
  3. 文件中写类class opVotePluginVoteActions extends sfActions{}
  4. 然后在opVotePlugin\apps\pc_frontend\modules\vote\actions\actions.class.php文件中的类继承刚才写的类
  5. class voteActions extends opVotePluginVoteActions{}
  6. 不仅电脑前台pc_frontend文件夹内,在opVotePlugin\apps下的所有手机电脑前后台模块动作都可以继承这个类,实现一个类管理多个前端
  7. 建立plugins\opVotePlugin\apps\pc_frontend\modules\vote\config\security.yml文件然后输入
  8. all:
  9. is_secure: on
  10. credentials: SNSMember
  11. 表示此模块需要验证,只有会员才能访问
  12. 在opVotePluginVoteActions类中写一个动作
  13. public function executeShow(sfWebRequest $request){}
  14. 然后创建plugins\opVotePlugin\apps\pc_frontend\modules\vote\templates\showSuccess.php
  15. 执行一次命令php symfony cc
  16. 至此可以通过http://localhost/openpne/web/vote/show来访问刚才创建的动作页面
复制代码
==================================================================================建立数据库表
  1. 创建plugins/opVotePlugin/config/doctrine/schema.yml文件,输入
  2. options:
  3. charset: utf8

  4. VoteQuestion:
  5. actAs: [Timestampable]
  6. columns:
  7. id: { type: integer(4), primary: true, autoincrement: true }
  8. member_id: { type: integer(4), notnull: true }
  9. title: { type: string(140), notnull: true }
  10. body: { type: string }
  11. relations:
  12. Member: { onDelete: cascade }

  13. VoteQuestionOption:
  14. columns:
  15. id: { type: integer(4), primary: true, autoincrement: true }
  16. vote_question_id: { type: integer(4), notnull: true }
  17. body: { type: string(140), notnull: true }
  18. relations:
  19. VoteQuestion: { onDelete: cascade, foreignAlias: VoteQuestionOptions }

  20. VoteAnswer:
  21. actAs: [Timestampable]
  22. columns:
  23. id: { type: integer(4), primary: true, autoincrement: true }
  24. member_id: { type: integer(4), notnull: true }
  25. vote_question_id: { type: integer(4), notnull: true }
  26. vote_question_option_id: { type: integer(4), notnull: true }
  27. body: { type: string }
  28. relations:
  29. Member: { onDelete: cascade }
  30. VoteQuestion: { onDelete: cascade, foreignAlias: VoteAnswers }
  31. VoteQuestionOption: { onDelete: cascade, foreignAlias: VoteAnswers }
  32. 表示分别创建了vote_question,vote_question_option,vote_answer三个表其中的relations表示设立外键关联
  33. 此时执行命令php symfony openpne:install将重新安装openPNE并创建前面三张表
  34. 之后再执行一次php symfony doctrine:build --all --and-load 重新插入数据
复制代码
==================================================================================路由规则
  1. 创建plugins/opVotePlugin/lib/routing/opVotePluginFrontendCollection.class.php
  2. 输入

  3. <?phpclass opVotePluginFrontendRouteCollection extends sfRouteCollection{  public function __construct(array $options)  {    parent::__construct($options);    $this->routes = array(      'vote_list' => new sfRequestRoute(    /*例如<form method="post" action='<?php echo url_for("@vote_list?id=1");?>'>表单通过此来指定提交到哪个动作并传一个id参数*/        '/vote',                            //http://localhost/openpne/web后接的部分来访问此动作        array('module' => 'vote', 'action' => 'index'),    //指定以上规则所属的模块与动作        array('sf_method' => array('get'))      ),      'vote_new' => new sfRequestRoute(        '/vote/new',        array('module' => 'vote', 'action' => 'new'),        array('sf_method' => array('get'))      ),      'vote_create' => new sfRequestRoute(        '/vote/create',        array('module' => 'vote', 'action' => 'create'),        array('sf_method' => array('post'))      ),      'vote_edit' => new sfDoctrineRoute(        '/vote/edit/:id',    //http://localhost/openpne/web后接的部分加参数来访问此动作如http://localhost/openpne/web/vote/edit/5  5为要传的值        array('module' => 'vote', 'action' => 'edit'),        array('id' => '\d+', 'sf_method' => array('get')),        array('model' => 'VoteQuestion', 'type' => 'object')      ),      'vote_update' => new sfDoctrineRoute(        '/vote/update/:id',        array('module' => 'vote', 'action' => 'update'),        array('id' => '\d+', 'sf_method' => array('post')),        array('model' => 'VoteQuestion', 'type' => 'object')      ),      'vote_show' => new sfDoctrineRoute(        '/vote/show/:id',        array('module' => 'vote', 'action' => 'show'),        array('id' => '\d+', 'sf_method' => array('get')),        array('model' => 'VoteQuestion', 'type' => 'object')      ),      'vote_post' => new sfDoctrineRoute(        '/vote/post/:id',        array('module' => 'vote', 'action' => 'post'),        array('id' => '\d+', 'sf_method' => array('post')),        array('model' => 'VoteQuestion', 'type' => 'object')      ),      'vote_delete_confirm' => new sfDoctrineRoute(        '/vote/delete/:id',        array('module' => 'vote', 'action' => 'deleteConfirm'),        array('id' => '\d+', 'sf_method' => array('get')),        array('model' => 'VoteQuestion', 'type' => 'object')      ),      'vote_delete' => new sfDoctrineRoute(        '/vote/delete/:id',        array('module' => 'vote', 'action' => 'delete'),        array('id' => '\d+', 'sf_method' => array('post')),        array('model' => 'VoteQuestion', 'type' => 'object')      ),      // no default     'vote_nodefaults' => new sfRoute(        '/vote/*',        array('module' => 'default', 'action' => 'error')      ),    );  }}?>创建plugins/opVotePlugin/apps/pc_frontend/config/routing.yml
  4. 输入
  5. vote:
  6. class: opVotePluginFrontendRouteCollection
  7. options: { name: vote }
复制代码
指定由哪个类来设定路由规则
输入命令php symfony cc
输入命令php symfony app:routes pc_frontend 查看路由是否设定成功
不创建opVotePluginFrontendCollection.class.php与routing.yml文件也可,将按默认路由访问
登陆初始用户名密码sns@example.com / password
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP