雷林鹏分享:Yii(yiiframework)框架二:建立第一个Yii应用

  前面已经安装好了yii框架,现在我们来建立第一个Yii应用

  1、进入您网站更目录

  2、执行命令:YiiRoot/framework/yiic webapp testdrive

  说明:这里的YiiRoot为您Yii框架的安装目录。

  3、输入以上命令后,会出现一个提示信息:

  PHP Warning: PHP Startup: Unable to load dynamic library '/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/php_pdo_mysql.dll' - /usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/php_pdo_mysql.dll: cannot open shared object file: No such file or directory in Unknown on line 0

  Create a Web application under '/home/wwwroot/test.yii.com/'? (yes|no) [no]:

  这里提示是否在该目录下安装web应用,我们直接输入yes即可完成应用的建立。

  4、访问您的应用:http://hostname/index.php,我们可以看到一个包含有首页、关于页面、联系页面、登录页面的应用。

安装第一个yii应用

  5、应用目录结构介绍:

  |-- assets 包含公开的资源文件

  |-- css 包含 CSS 文件

  | |-- bg.gif

  | |-- form.css

  | |-- ie.css

  | |-- main.css

  | |-- print.css

  | `-- screen.css

  |-- images 包含图片文件

  |-- index-test.php 功能测试使用的入口脚本文件

  |-- index.php Web 应用入口脚本文件

  |-- protected 包含受保护的应用文件

  | |-- commands 包含自定义的 'yiic' 命令

  | | `-- shell 包含自定义的 'yiic shell' 命令

  | |-- components 包含可重用的用户组件

  | | |-- Controller.php 所有控制器类的基础类

  | | `-- UserIdentity.php 用来认证的 'Identity' 类

  | |-- config 包含配置文件

  | | |-- console.php 控制台应用配置

  | | |-- main.php Web 应用配置

  | | `-- test.php 功能测试使用的配置

  | |-- controllers 包含控制器的类文件

  | | `-- SiteController.php 默认控制器的类文件

  | |-- data 包含示例数据库

  | | |-- schema.mysql.sql 示例 MySQL 数据库

  | | |-- schema.sqlite.sql 示例 SQLite 数据库

  | | `-- testdrive.db 示例 SQLite 数据库文件

  | |-- extensions 包含第三方扩展

  | |-- messages 包含翻译过的消息

  | |-- migrations

  | |-- models 包含模型的类文件

  | | |-- ContactForm.php 'contact' 动作的表单模型

  | | `-- LoginForm.php 'login' 动作的表单模型

  | |-- runtime 包含临时生成的文件

  | |-- tests 包含测试脚本

  | | |-- WebTestCase.php

  | | |-- bootstrap.php

  | | |-- fixtures

  | | |-- functional

  | | | `-- SiteTest.php

  | | |-- phpunit.xml

  | | |-- report

  | | `-- unit

  | |-- views 包含控制器的视图和布局文件

  | | |-- layouts 包含布局视图文件

  | | | |-- column1.php 使用单列页面使用的布局

  | | | |-- column2.php 使用双列的页面使用的布局

  | | | `-- main.php 所有视图的默认布局

  | | `-- site 包含 'site' 控制器的视图文件

  | | |-- contact.php 'contact' 动作的视图

  | | |-- error.php 'error' 动作的视图(显示外部错误)

  | | |-- index.php 'index' 动作的视图

  | | |-- login.php 'login' 动作的视图

  | | `-- pages 包含 "静态" 页面

  | | `-- about.php "about" 页面的视图

  | |-- yiic yiic 命令行脚本

  | |-- yiic.bat Windows 下的 yiic 命令行脚本

  | `-- yiic.php yiic 命令行 PHP 脚本

  `-- themes 包含应用主题

  `-- classic

  `-- views

  |-- layouts

  |-- site

  `-- system

  文章转载自 [http://www.php230.com]

原文地址:https://www.cnblogs.com/linpeng1/p/10899288.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


1、将Yii2.0advanced版中应用主体frontend或backend应用复制为api应用2、在应用主体api目录的controller新建SiteController.php:namespaceapi\controllers;useYii;useyii\rest\ActiveController;/*SiteController测试控制器*/classSiteControllerextendsActiveCon
Yii2restfulAPI文档一、配置模块:1.Config/main.php:  2.创建模块目录:  3.Module.php:  二、路由配置:  三、控制器:  四、Models:   五、测试:GET:  POST:  PUT:      DELETE:  
Yii在framework/i18n/data/%lang%.php文件中有很多翻译.这是例如germantranslations我想在我的Yii项目中使用Fullcalendar.要翻译此日历,我必须为当前语言提供一个monthNames/dayNames数组.FullcalendarmonthNamesDocumentationYii生成数组的最佳方法是什么:['January'
在Yii2中,官方的页面多语言解决方案有两个:方案1,使用Yii::t()函数,在页面中需要输出文字的地方,使用类似如下代码:<?=Yii::t(‘views/login’,‘hello’)?>这样做的后果是页面上大量充斥着类似的代码,导致页面可读性很差,而且对于同一个页面来说,Yii::t()函数的第一个参数基本上都是
Yii2.0对数据库查询的一些简单的操作123456789101112131415161718192021222324252627282930313233343536373839User::findOne($id);   //此方法返回 主键 id=1  的一条数据(举个例子);  User::find()->where(['name' =
数据查询User::find()->all();此方法返回所有数据;User::findOne($id);此方法返回主键id=1的一条数据(举个例子);User::find()->where(['name'=>'小伙儿'])->one();此方法返回['name'=>'小伙儿']的一条数据;User::find()->where(['n
最近打算提升自己的解决问题能力,于是打算从学习其他框架下手,让我们先去了解yii框架是如何运作的吧!https://www.yiichina.com/访问yii中文网站  让我们先把框架下载下来点击下载框架 科普一下:目前yii框架有三个版本yii1.0、yii1.1、yii2.0貌似即将推出3.0 这里我们
如何在Yii2中检查模型属性的类型(列类型)?ThisoldYiiForumanswer给了我一个结论,在Yii1中我可以使用类似的东西:$model->getMetaData()->columns['attribute-name']->type;但我没有成功将此解决方案移植到Yii2.有人可以帮忙吗?解决方法:您可以使用:$model->getTableSchema()
defined('YII_DEBUG')ordefine('YII_DEBUG',true);defined('YII_ENV')ordefine('YII_ENV','dev');require(__DIR__.'/../vendor/autoload.php');//注册类加载器require(__DIR__.'/../vendor/yii
在NGINX中配置:location/{   if(!-e$request_filename){    rewrite^/(.*)/index.phplast;}这样,当NGINX找不到文件的时候,就会将URL重写为index.php。对于URL中只有域名的情况,因为不存在对应的文件,所以会匹配到。再配置:location~\.php${  include
Yii2.0封装的类足够强大,Mailer的使用方法做一个总结:1、先在main-local.php中做好配置:return[//....'components'=>['mailer'=>['class'=>'yii\swiftmailer\Mailer',],],];详细如下:return[//....'components'=>[
每当我尝试登录我的Yii应用程序时,它都会显示错误CDbConnectionfailedtoopentheDBconnection:couldnotfinddriver.我google了很多个小时,从许多博客我知道我需要pdo_mysql,但已经安装了.在php.ini中我也对这些行做了评论;extension=php_pdo_mysql.dll;extension
我有一个模型Aziende,它与称为Annunci的花药模型相关(1:N),如下所示:'annunci'=>array(self::HAS_MANY,'Annunci','azienda_id'),我想算一下有多少记录确实有这种关系,在mySql中我会做:SELECTcount(*)FROM`aziende`aJOINannuncianONan.azienda_id=a.id我怎么能
我们有一个项目,为孟加拉国最大的服装行业之一建立一个ERP系统.他们有大约20,000名员工,其中约10%的员工每个月都会离职.我们是一家拥有5名PHP开发人员的小公司,对这么大的项目没有多少经验.我们之前使用Codeigniter/ZendFramework和MySQL数据库开发了不同的中小规模项目.对于
我在Yii中有一些表单,使用以下内容以下拉形式从相关表中获取数据列表:dropDownList(CHtml::listData(Company::model()->findAll(array('order'=>'companyASC'))));这是有效的,但这意味着对于每个下拉列表(其中很多)我将这个数组(‘order’=>’公司ASC’放在每一个中.这是最
本文采用Yii文档,经过自己的修改,让读者更容易理解预定义完整列表: boolean : CBooleanValidator 的别名,确保属性的值是CBooleanValidator::trueValue 或CBooleanValidator::falseValue .captcha : CCaptchaValidator 的别名,确保了特性的值等于 CAPTCHA 显示出来
前面已经安装好了yii框架,现在我们来建立第一个Yii应用1、进入您网站更目录2、执行命令:YiiRoot/framework/yiicwebapptestdrive说明:这里的YiiRoot为您Yii框架的安装目录。3、输入以上命令后,会出现一个提示信息:PHPWarning:PHPStartup:Unabletol
一、ThinkPHPThinkPHP(FCS)是一个轻量级的中型框架,是从Java的Struts结构移植过来的中文PHP开发框架。它使用面向对象的开发结构和MVC模式,并且模拟实现了Struts的标签库,各方面都比较人性化,熟悉J2EE的开发人员相对比较容易上手,适合php框架初学者。ThinkPHP的宗旨是简化开发、提
我必须实现标题中提到的验证,即需要两个字段之一(电子邮件,电话).我在我的模型中这样做:[['email'],'either',['other'=>['phone']]],这是方法:publicfunctioneither($attribute_name,$params){$field1=$this->getAttributeLabel($attribute_nam
我试图得到(StatusCode)响应RESTapi,而它只返回字段名称和错误消息,如下所示[{"field":"Email","message":"Email\"ali@ali.ali\"hasalreadybeentaken."}]我添加了回复'response'=>['class'=>'