201501-27 Yii2.0教程入门篇——使用Gii生成代码 开启Giiconfig/web.php:$config=[...];if(YII_ENV_DEV){$config['bootstrap'][]='gii';$config['modules']['gii']='yii\gii\Module';}在web/index.php中设置YII_ENV_DEV:defined('YII_ENV')ordefine('YII_ENV','dev');如果是从非localhost访问需要在配置文件中作如下设置:'gii'=>['class'=>'yii\gii\Module','allowedIPs'=>['127.0.0.1','::1','192.168.0.*','192.168.178.20']//... 继续阅读 >
201501-27 Yii2.0教程应用结构篇 —— 结构概述 Yii应用参照模型-视图-控制器(MVC)设计模式来组织。模型代表数据、业务逻辑和规则;视图展示模型的输出;控制器接受出入并将其转换为模型和视图命令。除了MVC,Yii应用还有以下部分:入口脚本:终端用户能直接访问的PHP脚本,负责启动一个请求处理周期。应用:能全局范围内访问的对象,管理协调组件来完成请求.应用组件:在应用中注册的对象,提供不同的功能来完成请求。模块:包含完整MVC结构的独立... 继续阅读 >
201501-27 Yii2.0教程应用结构篇 —— 入口脚本 入口脚本是应用启动流程中的第一环,一个应用(不管是网页应用还是控制台应用)只有一个入口脚本。终端用户的请求通过入口脚本实例化应用并将将请求转发到应用。Web应用的入口脚本必须放在终端用户能够访问的目录下,通常命名为index.php,也可以使用Web服务器能定位到的其他名称。控制台应用的入口脚本一般在应用根目录下命名为yii(后缀为.php),该文件需要有执行权限,这样用户就能通过命令./yii<route>[arguments]... 继续阅读 >
201501-27 Yii2.0教程应用结构篇 —— 应用主体 应用主体是管理Yii应用系统整体结构和生命周期的对象。每个Yii应用系统只能包含一个应用主体,应用主体在入口脚本中创建并能通过表达式\Yii::$app全局范围内访问。补充:当我们说"一个应用",它可能是一个应用主体对象,也可能是一个应用系统,是根据上下文来决定[译:中文为避免歧义,Application翻译为应用主体]。Yii有两种应用主体:[[yii\web\Application|网页应用主体]]and[[yii\console\Application|控制台应用主... 继续阅读 >
201501-27 Yii2.0教程应用结构篇 —— 应用组件 应用主体是服务定位器,它部署一组提供各种不同功能的应用组件来处理请求。例如,urlManager组件负责处理网页请求路由到对应的控制器。db组件提供数据库相关服务等等。在同一个应用中,每个应用组件都有一个独一无二的ID用来区分其他应用组件,你可以通过如下表达式访问应用组件。\Yii::$app->componentID例如,可以使用\Yii::$app->db来获取到已注册到应用的[[yii\db\Connection|DBconnection]],使用\Yii::$app->c... 继续阅读 >
201501-27 Yii2.0教程应用结构篇 —— 控制器 控制器是MVC模式中的一部分,是继承[[yii\base\Controller]]类的对象,负责处理请求和生成响应。具体来说,控制器从应用主体接管控制后会分析请求数据并传送到模型,传送模型结果到视图,最后生成输出响应信息。动作控制器由动作组成,它是执行终端用户请求的最基础的单元,一个控制器可有一个或多个动作。如下示例显示包含两个动作viewandcreate的控制器post:namespaceapp\controllers;useYii;useapp\models\Post... 继续阅读 >
201501-27 Yii2.0教程应用结构篇 —— 视图 视图是MVC模式中的一部分。它是展示数据到终端用户的代码,在网页应用中,根据视图模板来创建视图,视图模板为PHP脚本文件,主要包含HTML代码和展示类PHP代码,通过[[yii\web\View|view]]应用组件来管理,该组件主要提供通用方法帮助视图构造和渲染,简单起见,我们称视图模板或视图模板文件为视图。创建视图如前所述,视图为包含HTML和PHP代码的PHP脚本,如下代码为一个登录表单的视图,可看到PHP代码用来生成动态内容如... 继续阅读 >
201501-27 Yii2.0教程应用结构篇 —— 模型 模型是MVC模式中的一部分,是代表业务数据、规则和逻辑的对象。可通过继承[[yii\base\Model]]或它的子类定义模型类,基类[[yii\base\Model]]支持许多实用的特性:属性:代表可像普通类属性或数组一样被访问的业务数据;属性标签:指定属性显示出来的标签;块赋值:支持一步给许多属性赋值;验证规则:确保输入数据符合所申明的验证规则;数据导出:允许模型数据导出为自定义格式的数组。Model类也是更多高级模型如Activ... 继续阅读 >
201501-27 Yii2.0教程应用结构篇 —— 过滤器 过滤器是控制器动作执行之前或之后执行的对象。例如访问控制过滤器可在动作执行之前来控制特殊终端用户是否有权限执行动作,内容压缩过滤器可在动作执行之后发给终端用户之前压缩响应内容。过滤器可包含预过滤(过滤逻辑在动作之前)或后过滤(过滤逻辑在动作之后),也可同时包含两者。使用过滤器过滤器本质上是一类特殊的行为,所以使用过滤器和使用行为一样。可以在控制器类中覆盖它的[[yii\base\Controller::b... 继续阅读 >
201501-27 Yii2.0教程应用结构篇 —— 小部件 小部件是在视图中使用的可重用单元,使用面向对象方式创建复杂和可配置用户界面单元。例如,日期选择器小部件可生成一个精致的允许用户选择日期的日期选择器,你只需要在视图中插入如下代码:<?phpuseyii\jui\DatePicker;?><?=DatePicker::widget(['name'=>'date'])?>Yii提供许多优秀的小部件,比如[[yii\widgets\ActiveForm|activeform]],[yii\widgets\Menu|menu]],jQueryUIwidgets,TwitterBootstrapwidgets。... 继续阅读 >
201501-27 Yii2.0教程应用结构篇 —— 模块 模块是独立的软件单元,由模型,视图,控制器和其他支持组件组成,终端用户可以访问在应用主体中已安装的模块的控制器,模块被当成小应用主体来看待,和应用主体不同的是,模块不能单独部署,必须属于某个应用主体。创建模块模块被组织成一个称为[[yii\base\Module::basePath|basepath]]的目录,在该目录中有子目录如controllers,models,views分别为对应控制器,模型,视图和其他代码,和应用非常类似。如下例子显示一个... 继续阅读 >
201501-27 Yii2.0教程应用结构篇 —— 前端资源 Yii中的资源是和Web页面相关的文件,可为CSS文件,JavaScript文件,图片或视频等,资源放在Web可访问的目录下,直接被Web服务器调用。通过程序自动管理资源更好一点,例如,当你在页面中使用[[yii\jui\DatePicker]]小部件时,它会自动包含需要的CSS和JavaScript文件,而不是要求你手工去找到这些文件并包含,当你升级小部件时,它会自动使用新版本的资源文件,在本教程中,我们会详述Yii提供的强大的资源管理功能。资源包Y... 继续阅读 >
201501-20 程序员视频以及文档教程 PHP开发视频文档下载:PHP(外文名:PHP:HypertextPreprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言。语法吸收了C语言、Java和Perl的特点,利于学习,使用广泛,主要适用于Web开发领域。PHP独特的语法混合了C、Java、Perl以及PHP自创的语法。它可以比CGI或者Perl更快速地执行动态网页。用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML(标准通用标记语言下的一个应用)文档中去执行,执行... 继续阅读 >
201411-11 Yii的缓存使用详细教程 ├──CApcCache.php├──CCache.php├──CDbCache.php├──CDummyCache.php├──CEAcceleratorCache.php├──CFileCache.php├──CMemCache.php├──CWinCache.php├──CXCache.php├──CZendDataCache.php└──dependencies├──CCacheDependency.php├──CChainedCacheDependency.php├──CDbCacheDependency.php├──CDirectoryCacheDependency.php├──CExpressionDependency.php├──CFile... 继续阅读 >
201411-07 MySQL入门教程5 —— 从数据表中检索信息 SELECT语句用来从数据表中检索信息。语句的一般格式是:SELECTwhat_to_selectFROMwhich_tableWHEREconditions_to_satisfy;what_to_select指出你想要看到的内容,可以是列的一个表,或*表示“所有的列”。which_table指出你想要从其检索数据的表。WHERE子句是可选项,如果选择该项,conditions_to_satisfy指定行必须满足的检索条件。1. 选择所有数据SELECT最简单的形式是从一个表中检索所有记录:mysql>SELECT*FRO... 继续阅读 >
201411-07 MySQL入门教程6 —— 获取数据库和表的信息 如果你忘记数据库或表的名字,或给定的表的结构是什么(例如,它的列叫什么),怎么办?MySQL通过提供数据库及其支持的表的信息的几个语句解决这个问题。你已经见到了SHOWDATABASES,它列出由服务器管理的数据库。为了找出当前选择了哪个数据库,使用DATABASE()函数:mysql>SELECTDATABASE();+------------+|DATABASE()|+------------+|menagerie |+------------+如果你还没选择任何数据库,结果是NULL。为了找出... 继续阅读 >