当前位置:首页 » 编程语言 » php的架构设计

php的架构设计

发布时间: 2022-10-17 03:20:13

php框架的PHP开发框架

一直以来php框架被广泛利用,多半都是基于mvc架构模式的,还有基于事件驱动模式的,大致列举几个。 ThinkPHP 是一个性能卓越并且功能丰富的轻量级PHP开发框架,本身具有很多的原创特性,并且倡导大道至简,开发由我的开发理念,用最少的代码完成更多的功能,宗旨就是让WEB应用开发更简单、更快速。从1.*版本开始就放弃了对PHP4的兼容,因此整个框架的架构和实现能够得以更加灵活和简单。2.0版本更是在之前的基础上,经过全新的重构和无数次的完善以及改进,达到了一个新的阶段,足以达到企业级和门户级的开发标准。国人开发的PHP框架,目前最新版本为3.2.3版本。
Canphp是一个中国开源的php框架,主要的设计理念就是为了追求简单,减少php初学者的学习成本,而且追求高效率,模版类不提供其他标签,直接应用php的源代码,还有它是微内核设计,移植性强,松散耦合等特点,能集成到你任何一个系统里面。其中集成的http类相当的强大,采集图片速度相当的快,为什么这样呢?因为适用了模拟异步多进程的原理。
KYPHP是一个中国开源的PHP框架,kyphp严格遵守OOP和MVC的理念,具有控件化、可扩展性强。kyphp设计理念是自由、简单。既可以用php源码编程,也可以使用标签,支持多语言,多数据库,多皮肤,多模型部署等,为程序员节省更多的时间。
InitPHP 是一款轻量级的php开发框架,采用分层体系架构,适合大中型网站架构。提供丰富的library类库,以及简单的框架扩展机制。InitPHP还提供详细的开发文档,可以让您在使用该框架的时候更加简单实用。InitPHP实现了抽象DB层、分层体系架构、缓存无缝切换机制、简单模板机制、多模型部署机制、强大的安全体系,是您快速开发php应用的利器!
SpeedPHP是一款全功能的国产PHP应用框架系统。她以“快速开发、快速学习、快速运行”为理念,在提高团队开发效率、容易学习及使用、轻量级架构以增加执行速度等方面有着突出的表现。SpeedPHP框架是从实际运行的商业系统中取其精华而成的,在稳定性和运行速度上都非常出色;同时有着清晰的架构,更有利于提高团队开发效率,教程众多,入门容易,号称最适合初学者的PHP框架,快速带你进入PHP高手的行列。
CdvPHP 一款简单开源PHP框架,灵感来源于DX,根据实际开发总结汇成快捷方便的轻量级框架。没有太多的硬性要求,也没有一本超厚的帮助手册。快速开发、部署、学习必备利器。KPHP即(kphp开源框架)是为了提高PHP开发效率而研发php开源框架,其核心简单精炼,代码安全并易于理解,功能更符合php学习开发的的需要,而且易于学习不改变程序员的开发习惯。 Zend Framework在开发社区中有大量的追随者,它致力于Web 2.0风格的程序。因为它众多的追随者组成的活跃用户开发的扩展支持,Zend被称为“The PHP Company”。Zend是一个(也可能不是)今天可用的最受欢迎的PHP开发框架。它有健壮的特征能够支持协作开发,它需要一些PHP的额外知识。
Codelgniter 以它的简单易用,性能和速度而闻名。与 Symphony 不同,这款PHP开发框架对于共享主机的用户而言很理想,如果你想有一个小型覆盖面的框架。它提供了简单的解决方案,还有扩展的知识库,通过视频教程,用户指南和wiki来提供支持。
CakePHP 无论对于初学者还是职业PHP开发者都是很好的选择。它基于与Rubyon Rails同样的原则而设计,它十分注重快速开发——这使得它成为一个非常好的用于RAD的开发框架。它快速增长的支持系统,简洁性和可测量性使得CakePHP成为今天可用的最受欢迎的PHP开发框架之一。
Symfony 是为那些更加职业的主要开发企业级程序的开发者而准备的——特别是 Askeet 和 Yahoo! Bookmarks。这款开源PHP开发框架有着丰富的特性,做起这些来绰绰有余,它主要的缺点是比其他的框架略微慢一些。
Yii 是一个基于组件、用于开发大型 Web 应用的 高性能 PHP 框架。它将 Web 编程中的可重用性发挥到极致,能够显着加速开发进程。Yii(读作“易”),代表简单(easy)、高效(efficient)、可扩展(extensible)。
Seagull 是一个良好的PHP开发框架,可以用来开发Web,命令行和GUI程序。这是一款无论对初学者还是职业程序员而言都及其简单的开发框架。对于初学者,Seagull提供一套包含样例程序的库,经过简单修改就能符合你的要求,而对于专家级程序员,Seagull提供了一整套设置选项——包括最佳练习,标准的和模块化的代码库——来快速简单地构建Web程序。Seagull有一个活跃的用户社区以及丰富的支持文档。
Laravel是一套简洁、优雅的PHP Web开发框架(PHP Web Framework)。它可以让你从面条一样杂乱的代码中解脱出来;它可以帮你构建一个完美的网络APP,而且每行代码都可以简洁、富于表达力。 E是一款非常简洁优秀开源的超轻量级PHP框架,致力于追求简洁,安全,自由,高效,是中小型项目首选框架。框架构架合理,一键生成完全合乎规范的大型网站文件夹架构,网站架构一目了然。强大的外部类库支持,分布式存储,强大的缓存系统,内置smarty模板引擎,单入口MVC模式,面向对象编程,具有微内核设计,移植性强,松散耦合等特点,能集成到你任何一个系统里面。无论您是一个NewPHPer 还是OLDPHPER,那么E框架是您的首选。学习完E框架后您可以快速并且轻松的驾驭其他框架,步入php高手之列。
DuoLamPHP是一款超轻量级的PHP框架,命名是按照多啦A梦动漫给改成的拼音形式。DP是一个简单、高效、上手容易的PHP框架,遵循apache开源协议。可以快速搭建出一个项目,作为一个超轻量级的PHP框架,完美支持MVC,完全面向对象。
Difeye框架 是一款超轻量级PHP框架,由Kohana框架精简而来,主要特点有:数据库连接自动主从读写分离配置,适合单机和分布式站点部署;支持Smarty模板机制;支持mysql、nosql类的mongodb等第三方数据库模块;完全分离页面和动作,自动执行Page_Load入口函数,支持二级路由,将页面模块和页面上的动作完全分离,使站点升级迁移更简单;框架简单易学容易部署;
GalaxixPhp 是一套专业的php建站框架,主要用于让用户在网上的建站,开发人员使用用 GalaxixPhp可以大大的缩小中型甚至大型网站的开发周期。GalaxixPhp 兼容 JavaScript ,可以无缝地与 Javascript,flash,PHP 等程序集成,适合构建展示、CMS、商城、论坛、博客、Wiki、等各种网站。并且官网上学习和说明文档以及视频教程齐全。是针对专业开发的人员的收费框架。并且官方正在不断推出更新更实用的框架插件。最新版本1.1.2.
PhpPeanuts 是一个用以开发数据库后端应用的PHP框架,包含一个可扩展的动态脚手架用来创建一个完整的web应用,提供用户界面和ORM,包括CRUD操作、关联关系以及一些示例查询。phpPeanuts 2.0 完全支持 PHP 5,遵循 ESTRICT 标准,不再使用变量引用来传递对象;提升了灵活性;更独立的模块,以及迭代的对象复制等等。
Rong Framework是一个国产的基于php5的面向对象开发框架,开发的主要目的是简化开发、高性能开发。支持数据库文件缓存、数据库通用操作及封装。简化CRUD代码编写。支持在线生成CRUD代码,只要选中数据表名称,就可以生成CRUD代码。不懂编程的人也可以做到。rong framework分为php代码模板(class Rong_View_PHP)和Rong_View_Wudimei(无敌美模板引擎,类似smarty)两种模板机制。拥有良好的MVC机制和url美化方式、可以在代码中实现URL重写(由Rong_Countroller_Route实现)。
Openbiz Framework是为搭建企业应用而设计的PHP的基于面向对象的快速开发框架。它可以帮助专业软件开发人员和技术咨询专家来构建用于网络上的企业级应用。Openbiz Framework的设计目标是节省构建复杂应用系统的开发投入和缩短开发时间。借助于Openbiz的帮助,应用程序的开发将基于完善的MVC架构建立,以Metadata驱动为核心描述业务逻辑,支持多种ORM逻辑,并且有Openbiz Appbuilder作为图形化集成开发环境的快速开发平台。

② php管理系统框架设计

思路1:权限组概念,根据你的情况,分配四个组,创建用户之后,分配到对应的几个组中。每个组能打开的页面的权限是不一样的。
优点:比较简单,而且清晰。
缺点:不够细致,比如A是车间操作组的,那么又要给他加一个技术办公室的一个页面,就得同时给他附上这两个组的权限,这样就不太合适了。

思路2:有权限组,还有单独的权限管理。也就是具体针对某一个Controller下的Action的,没有这个Action的权限,就无法访问这个Action。这样就比较细致。而权限组,就是把这些action归纳成一个组,用户有这个组的权限,就能访问这组里的所有action。
优点:比较细致,能充分满足需求。
缺点:实现由点烧困难

③ php除了mvc还有什么架构

MVC
MVC是一个设计模式,它强制性的使应用程序的输入、处理和输出分开。使用MVC应用程序被分成三个核心部件:模型(M)、视图(V)、控制器(C),它们各自处理自己的任务。
OOP
面向对象编程(Object Oriented Programming,OOP,面向对象程序设计)是一种计算机编程架构。OOP 的一条基本原则是,计算机程序是由单个能够起到子程序作用的单元或对象组合而成。OOP 达到了软件工程的三个主要目标:重用性、灵活性和扩展性。为了实现整体运算,每个对象都能够接收信息、处理数据和向其它对象发送信息。OOP 主要有以下的概念和组件:
组件 - 数据和功能一起在运行着的计算机程序中形成的单元,组件在 OOP 计算机程序中是模块和结构化的基础。
抽象性 - 程序有能力忽略正在处理中信息的某些方面,即对信息主要方面关注的能力。
封装 - 也叫做信息封装:确保组件不会以不可预期的方式改变其它组件的内部状态;只有在那些提供了内部状态改变方法的组件中,才可以访问其内部状态。每类组件都提供了一个与其它组件联系的接口,并规定了其它组件进行调用的方法。
多态性 - 组件的引用和类集会涉及到其它许多不同类型的组件,而且引用组件所产生的结果得依据实际调用的类型。
继承性 - 允许在现存的组件基础上创建子类组件,这统一并增强了多态性和封装性。典型地来说就是用类来对组件进行分组,而且还可以定义新类为现存的类的扩展,这样就可以将类组织成树形或网状结构,这体现了动作的通用性。
由于抽象性、封装性、重用性以及便于使用等方面的原因,以组件为基础的编程在脚本语言中已经变得特别流行。
ORM
对象-关系映射(Object/Relation Mapping,简称ORM),是随着面向对象的软件开发方法发展而产生的。面向对象的开发方法是当今企业级应用开发环境中的主流开发方法,关系数据库是企业级应用环境中永久存放数据的主流数据存储系统。对象和关系数据是业务实体的两种表现形式,业务实体在内存中表现为对象,在数据库中表现为关系数据。内存中的对象之间存在关联和继承关系,而在数据库中,关系数据无法直接表达多对多关联和继承关系。因此,对象-关系映射(ORM)系统一般以中间件的形式存在,主要实现程序对象到关系数据库数据的映射。
面向对象是从软件工程基本原则(如耦合、聚合、封装)的基础上发展起来的,而关系数据库则是从数学理论发展而来的,两套理论存在显着的区别。为了解决这个不匹配的现象,对象关系映射技术应运而生。

④ php都有哪些框架

1. Yii

Yii是一个基于组件的高性能的PHP的框架,用于开发大规模Web应用。Yii采用严格的OOP编写,并有着完善的库引用以及全面的教程。从MVC,DAO/ActiveRecord,widgets,caching,等级式RBAC,Web服务,到主体化,I18N和L10N,Yii提供了今日Web 2.0应用开发所需要的几乎一切功能。而且这个框架的价格也并不太高。事实上,Yii是最有效率的PHP框架之一。

2. CodeIgniter

CodeIgniter是一个应用开发框架——一个为建立PHP网站的人们所设计的工具包。其目标在于快速的开发项目:它提供了丰富的库组以完成常见的任务,以及简单的界面,富有条理性的架构来访问这些库。使用CodeIgniter开发可以往项目中注入更多的创造力,因为它节省了大量编码的时间。

3. CakePHP

CakePHP是一个快速开发PHP的框架,其中使用了一些常见的设计模式如ActiveRecord,Association Data Mapping,Front Controller以及MVC。其主要目标在于提供一个令任意水平的PHP开发人员都能够快速开发web应用的框架,而且这个快速的实现并没有牺牲项目的弹性。

4. PHPDevShell

PHPDevShell是一个开源(GNU/LGPL)的快速应用开发框架,用于开发不含Javascript的纯PHP。它有一个完整的GUI管理员后台界面。其主要目标在于开发插件一类的基于管理的应用,其中速度、安全、稳定性及弹性是最优先考虑的重点。其设计形成了一个简单的学习曲线,PHP开发者无需学习复杂的新术语。PHPDevShell的到来满足了开发者们对于一个轻量级但是功能完善,可以无限制的进行配置的GUI的需求。

⑤ php 架构设计 logic server

model 就是对数据库的操作,比如增删改查语句
view 相当于静态页面
controller 就是php逻辑代码,比如 新建一个控制器类,然后写个方法,里面包括实例化一个模型对象,调用模型对象的方法,载入html文件。

⑥ PHP架构到底是什么啊,是一种技术吗

不是的,架构是对产品体系结构的简称,比如i386和x86,两个不仅在硬件设计上有差别,数据存储方式上也有差别。简单来说架构就是一整套体系化设计方案,包含了大量的设计模式和知识产权。

⑦ 怎样设计 PHP 程序架构,能使界面和逻辑分开

用MVC架构的PHP框架。。。你需要的是学习框架的结构。。推荐Yii和thinkPHP。
yii:http://www.yiichina.com/doc/guide/2.0/start-installation
thinkphp:http://www.thinkphp.cn/
学会运用框架后,再了解学习框架的底层路由和模块、方法、视图的交互方式,再要自己写个MVC结构的PHP程序 ,也就是分分钟的事了。

⑧ php 系统架构

网上收索的,共享给你:

《Beautiful Architecture》?
《Beautiful Code》的姐妹作,里面有三成的架构是自己感兴趣的,已经有国内出版社拿下了,架构师的唐诗三百首------O'reilly新书Beautiful Architecture(InfoQ)?。

《97 Things Every Software Architect Should Know 》?
一个开放的wiki?,O'Reilly 将它发布成书,不知道有没人在翻,架构公理的书(InfoQ)?。

《Pattern-Oriented Software Architecture, Volume 4 - A Pattern Language forDistributed Computing》?
架构模式的集大成者,号称有人在翻但等了一年中文版还是没翻出来啊,面向模式软件架构第4、5卷出版(InfoQ)?。
架构技术类

云计算已经开始代替SOA成为新一代Buz Word,回顾一下整个SOA出版风潮,自己觉得值得一读不忽悠的居然只有一本《SOA in Practic - SOA实践指南-分布式系统设计的艺术》?。
在热潮彻底退却前,SOA的书还在继续出着,OSGI与SCA的书也开始出现:
《SOA Design Patterns》?
又是Thomas Erl的书,很奇怪的连电子版都找不到,SOA设计模式出版啦(InfoQ)?。

还 没出版的呀一大堆 --《SOA Patterns》、《ESB Architecture for SOA》、《SOA with Java》、《Open Source SOA》、《OSGi in Action》、《SpringSource dm Server in Action》、《Molar Java: Creating Flexible Applications with OSGi and Spring》、《Understanding SCA》、《Apache Tuscany in Action》...
编程匠师类

立志做一个匠师的人今年比较幸福,可以看的书很多:
《Beautiful Code - 代码之美》 ?
很有经典潜质的一本,去年没有读完今年继续,《代码之美》的精选版(InfoQ)?。

《Protive Programmer - 卓有成效的程序员》?
Thoughtworks中国翻译的,看了下样章,熊节(透明)的翻译依然是这么好, 《卓有成效的程序员》推荐序:做一个懒人(InfoQ)?。

《Clean Code: A Handbook of Agile Software Craftsmanship》?
Rober。C大叔的书,不知道谁在翻,应该很容易翻啊,到后面大段大段都是代码。

《Effective Java中文版(第2版)》

Web系统架构及开发推荐书籍:
一、《Linux企业集群—用商用硬件和免费软件构件高可用集群》
深入分析了LVS, HeartBeat等,是构建Linux集群不可多得的资料。
二、《构建高性能Web站点》
重点介绍如何构建一个高性能的Web系统,国内为数不多的值得一读的技术书籍。
三、《大规模Web服务开发技术》
对大型网站涉及到的技术及相关知识点做了介绍。

四、《构建可扩展的Web站点》
Flicker的经验之谈,重点讲述如何构建一个可扩展的Web系统。
五、《Web容量规划的技术》
Flicker的经验之谈,重点讲述如何进行容量规划。
六、Scalability Rules: 50 Principles for Scaling Web Sites
主要讲述如何开发易扩展的系统。
七、《分布式数据库系统及其应用》(第二版)

科院研究生教材,很有料!大型网站的数据库通常是分布式的,如何设计分布式数据库系统?如何优化分布式查询?本书都作了比较专业的解答。另外,
《MongoDB权威指南》、《Cassandra权威指南》对了解NoSQL的同学来说,也非常值得一读。选择合适的数据存储工具是架构师经常面对的问
题。

php架构:
《企业应用架构模式》
《软件架构的艺术》
《J2EE核心模式》
四人帮《设计模式》——推荐其他衍生书籍。
《架构实战—软件架构设计的过程》英文版最好,中文翻译的太差。
《J2EE反模式》
《POSA》的5本(《面向模式的软件架构》系列)
《架构之美》
《模型驱动设计》

⑨ php 的框架与模板

楼主的认知不对哦,以下为楼主解惑:

框架:在php源码的基础上,开发者将常用的功能进行二次封装形成的代码集合,其本身往往不具备任何可用的功能,其目的仅仅是使开发人员可以基于框架更快的开发出符合要求的应用。例如,不使用框架开发一个用户管理功能可能需要5天,使用框架可以将这个时间缩短到2天。实际上,对于任何一个项目,访问控制、数据库访问、文件处理等功能都是必备的,框架就是将这些常用功能进行了更易用的封装,避免开发人员在通用组件上重复开发,浪费时间。

模板:为了将PHP内容和html内容更好的分离为目的产生的一种应用,其主要目的是为了网页制作人员可以不去学习PHP就能修改页面的内容(可惜不学PHP还要学smarty,因此我个人并不觉得模板真的能带来什么实际的好处)

另外,如dede,DZ,PHPCMS等是基于PHP的产品,本身已经具备了大量的功能,安装之后就能使用,当然,因为需求的不同可能需要在该产品的基础上进行二次开发。

综述,模板没有太大的价值,完全可以在非用不可的时候再去学习,对于PHP开发人员来说,smarty可以立刻上手。它可以(也只能)被框架或PHP产品使用。框架是必须掌握的,定制性很强的项目必然都是基于框架开发的。PHP产品,如果你要开发的项目和某个PHP产品的功能达到80%以上的契合,那么应该考虑基于该产品进行开发。

一些网站提供简单的博客,留言板等的源码,不基于框架的小项目实际上只能称为练习,只有参考价值。

注:不是说不使用框架的项目就不算项目,事实上如果一个项目如果没有使用某某框架,其项目的一部分代码也必然的会具有框架的特征,即自定义框架也是框架。

⑩ PHP中的项目文件的结构是怎么设计的

可以有很多种,看你怎么写了,比如三层结构,主目录(项目名目录),里面有iamges,html,js,conn(连接数据库文件如config),data,templates模板文件,admin(后台管理),等等等。

热点内容
安卓上哪里下大型游戏 发布:2024-12-23 15:10:58 浏览:189
明日之后目前适用于什么配置 发布:2024-12-23 14:56:09 浏览:56
php全角半角 发布:2024-12-23 14:55:17 浏览:829
手机上传助手 发布:2024-12-23 14:55:14 浏览:733
什么样的主机配置吃鸡开全效 发布:2024-12-23 14:55:13 浏览:831
安卓我的世界114版本有什么 发布:2024-12-23 14:42:17 浏览:711
vbox源码 发布:2024-12-23 14:41:32 浏览:279
诗经是怎么存储 发布:2024-12-23 14:41:29 浏览:661
屏蔽视频广告脚本 发布:2024-12-23 14:41:24 浏览:420
php解析pdf 发布:2024-12-23 14:40:01 浏览:821