windframework轻量级PHP开源框架

  windframework是一个轻量级的php开源框架。它以组件工厂为核心,提供了像MVC,数据持久化,视图模板引擎等应用技术。此外windframework采取了一种组件化的开发模式。虽然目前的组件库还不算丰富健壮,但是基于这种开发模式,使组件的扩展变得非常的容易。windframework拥有一个强健的内核,它实现了基于配置的Ioc控制反转技术。是开发者只需要简单的配置,就可以实现类的依赖注入,完全实现了类与类的松耦合。当然它的美妙之处还不仅于此。

  开源项目地址:https://github.com/phpwind/windframework

  经典的hello world应用实例,用一个非常熟悉的应用来开启一个新框架的学习应用吧!这个应用实例会一如既往的在浏览器窗口打印‘Hello World’字样。完成这个应用我们将了解到:

  1. 如何获取windframework框架源码

  2. windframework框架环境需求

  3. windframework基础的目录结构和默认运行规则

  4. 你还会创建自己的第一个action controller

  当然这个应用非常的简单,我们应该可以很快的完成这个应用并看到‘hello world’的输出。我想这应该快速的拉近了我们之间的距离,但是想要做出强大的应用只是这样还远远不够。

  首先:下载框架源码

  *如果您手头已经有了一份框架代码那么可以跳过此步骤

  windframework在github上进行发布和共享。访问 https://github.com/phpwind/windframework/downloads 获取框架最新源代码,你也可以在此找到以前的Release版本。下载解压,或者直接使用 git@github.com:phpwind/windframework.git 。

  环境要求:

  php5.1.2及以上版本。

  可发布的web环境,apache或aginx

  然后:开始我们的helloworld之旅

  1. 创建应用目录文件

  我们在web的根目录(/var/www 或者其他地方)创建一个文件夹,命名为helloworld。将下载好的框架解压并放到该应用目录下。创建好的目录结构如下:

  /var/www/helloworld/

  wind/ 框架目录

  controller/ 应用控制器目录,业务代码放在该目录下

  controller/IndexController.php 默认访问的应用控制器

  template/ 页面模板目录

  template/index.htm 模板文件

  index.php 入口脚本文件

  2. 编辑入口脚本index.php

  在应用目录下创建入口脚本index.php,它的主要工作是加载框架并启动应用。代码如下:

  require_once ('../../wind/Wind.php');

  Wind::application()->run();

  *当然也可以同时在index.php中设置错误级别,WIND_DEBUG模式等。相关内容后面会介绍。

  3. 创建IndexController.php

  在应用目录下创建controller/目录。controller目录是windframework默认定义的应用控制器存放的目录,我们也可以通过手动配置的方式来改变应用的访问路径。在我们创建的 controller/ 目录下创建IndexController.php类文件。文件内容如下:

  <?php

  /**

  * the last known user to change this file in the repository <$LastChangedBy: long.shi $>

  * @author Qiong Wu

  * @version $Id: IndexController.php 2806 2011-09-23 03:28:55Z long.shi $

  * @package

  */

  class IndexController extends WindController {

  public function run() {

  echo 'hello world';

  }

  }

  ?>

  *在windframework中文件名和类名是相同的,这一点有点类似于java。windframework提供了两个应用控制器的类型‘WindSimpleController’,‘WindController’。在这里我们继承自‘WindController’,这两个应用控制器的区别,在后面会具体介绍。

  至此,我们的helloworld 应用已经完成。快通过浏览器访问下我们的helloworld 吧:

  http://localhost/helloworld/index.php

时间: 2024-12-23 00:32:38

windframework轻量级PHP开源框架的相关文章

58同城开源轻量级Java Web框架 Argo

58同城开源轻量级Java Web框架 Argo 发表于17小时前| 次阅读| 来源CSDN| 0 条评论| 作者张红月 开源58同城JavaWeb框架 摘要:58同城开源其轻量级Java Web框架--Argo,Argo起源与58同城的内部Web框架wf(Web Framework).目前wf支撑着58同城几乎所 有的Web站点.开发者们对此次开源的反响非常强烈,几乎一天时间就被收藏了90次,fork34个.那么是否会掀起国内的开源热潮呢? 如今,开源已成为业界互联网公司的一种发展趋势,许多公

Python六大开源框架的对比:Web2py更佳

Python是一门动态.面向对象语言.其最初就是作为一门面向对象语言设计的,并且在后期又加入了一些更高级的特性.除了语言本身的设计目的之外,Python标准库也是值得大家称赞的,Python甚至还自带服务器.其它方面,Python拥有足够多的免费数据函数库.免费的Web网页模板系统.还有与Web服务器进行交互的库.这些都可以设计到你的Web应用程序里面. 在这篇文章里,我们将为Python Web开发者回顾基于Python的6大Web应用框架.无论你是出于爱好还是需求,这六大框架都可能会成为你工

15个最受欢迎的Python开源框架

我们从GitHub中整理出了15个最受欢迎的Python开源框架,这些框架包括事件I/O.OLAP.Web开发.高性能网络通信.测试.爬虫等. 1. Django: Python Web应用开发框架 Django 应该是最出名的Python框架,GAE甚至Erlang都有框架受它影响.Django是走大而全的方向,它最出名的是其全自动化的管理后台:只需要使用起ORM,做简单的对象定义,它就能自动生成数据库结构.以及全功能的管理后台. 2. Diesel:基于Greenlet的事件I/O框架 Di

想自己做一个开源框架,选用哪些组件比较好用,欢迎讨论

问题描述 大家好,做软件好多年了,一直给人打工,最近萌生了想自己做个开源框架的想法.工作多年,也接触了一些公司和产品,来这里听听大家的想法,集思广义,希望作出的东西好用些,尽量借鉴一些已经开源的做法.我先说说需求吧:1.首先定位成轻量级的,不要搞太复杂2.满足一般的网站.企业管理系统即可.3.要适应跨平台需求.4.要足够灵活,支持用户级别的自定义需求,包括流程.报表.表单的自定义需求待定.5.因为从业多年一直是.NET路线,对其他语言虽有接触但不熟,还是做.NET的吧,做自己擅长的.最近考虑了一

Win10 UWP再支持Facebook React Native开源框架

微软正在为React Native开源框架增加Windows 10 UWP的支持. React Native最初是由Facebook开发的用于生成用户界面的JavaScript代码库,并于2015年开放了的源代码.该框架旨在让开发人员能够开发跨iOS和安卓平台的移动原生应用程序.但是,React Native并不是一次编写就能在多个平台运行的框架,相反,它侧重于每个平台独特的功能特点. 微软称,将React Native应用程序延伸到了Windows 10设备,包括个人电脑.移动设备.Xbox

【框架】[Spring3]下载安装、开源框架与IoC控制反转详解

转载请注明出处:http://blog.csdn.net/qq_26525215 本文源自[大学之旅_谙忆的博客] 昨天刚刚初学Spring3,也许Spring3有点老了哈,不过还是先把3学了再去学习4吧,首先先介绍一下如何去下载Spring的必须包吧. (本篇博客适用于初学Spring的朋友) java spring4现在不推荐使用xml配置文件- 当然啦,这些知识点在Spring4还是可以用的. 不过我在这里详解的还是Spring3哈,见谅~ 下载SpringJAR包/文档: Spring官

分布式计算开源框架Hadoop入门实践(一)

在SIP项目设计的过程中,对于它庞大的日志在开始时就考虑使用任务分解的多线程处理模式来分析统计,在我从前写的文章<Tiger Concurrent Practice --日志分析并行分解设计与实现>中有所提到.但是由于统计的内容暂时还是十分简单,所以就采用Memcache作为计数器,结合MySQL就完成了访问控制以及统计的工作.然而未来,对于海量日志分析的工作,还是需要有所准备.现在最火的技术词汇莫过于"云计算",在Open API日益盛行的今天,互联网应用的数据将会越来越

Android Annotations开源框架简介

AndroidAnnotations是一个开源框架,旨在加快Android开发的效率.通过使用它开放出来的注解api,你几乎可以使用在任何地方, 大大的减少了无关痛痒的代码量,让开发者能够抽身其外,有足够的时间精力关注在真正的业务逻辑上面.而且通过简洁你的代码,也提高了代码的稳定性和后期的维护成本.以下AndroidAnnotations简称为AA 可能会有人提出异议了,我们移动设备的性能,不比后台服务器拥有充足的内存和运算能力.当大量的使用注解的时候,会不会对APP的造成什么不良的影响,会不会

分布式计算开源框架Hadoop入门实践(三)

Hadoop基本流程 计算开源框架Hadoop入门实践(三)-hadoop分布式计算框架"> 一个图片太大了,只好分割成为两部分.根据流程图来说一下具体一个任务执行的情况. 在分布式环境中客户端创建任务并提交. InputFormat做Map前的预处理,主要负责以下工作: 验证输入的格式是否符合JobConfig的输入定义,这个在实现Map和构建Conf的时候就会知道,不定义可以是Writable的任意子类. 将input的文件切分为逻辑上的输入InputSplit,其实这就是在上面提到的