Rumah pembangunan bahagian belakang tutorial php phpwind发布windframework开源开发框架,越来越热闹了解决办法

phpwind发布windframework开源开发框架,越来越热闹了解决办法

Jun 13, 2016 pm 01:40 PM
cache mvc wind

phpwind发布windframework开源开发框架,越来越热闹了
今日,知名互联网产品与服务提供商phpwind正式推出通用的php开源技术框架‘windframework’。基于phpwind多年专注php开发积累沉淀下来的技术和解决方案,windframework将为未来推出的phpwind下一代社区产品提供统一的应用开发架构服务。而作为一款通用型的框架,windframework也将为开发者提供更为简单、安全、扩展性良好的应用开发支持。

  phpwind旗下社区建站通用型程序phpwind,作为一款广受站长欢迎的产品,在国内拥有广泛的社区网站用户,而通过此次底层开发框架的统一和重构,将能为广大开发者提供轻盈,简洁的开发框架,同时提供给基于此框架开发产品以庞大的用户基础。

  什么是windframework?

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

  Windframework由phpwind社区开发团队自主研发,2010年10月份开始投入,目前为止已经内部发行了四个版 本。它源自phpwind社区产品的一次名为‘鹊桥’的重构计划。意在重新定义phpwind的架构分层以及开发模式,使其看起来更清晰,更易于扩展和二次开发。

据项目负责人吴琼介绍,项目最开始对windframework 的定位和设想是希望提炼phpwind社区产品的底层实现并对其进行统一化部署;也是对phpwind产品中多年积累沉淀下来的技术和解决方案进行整理重构,使其成为通用的标准化的工具/组件库。后来windframework逐渐的发展成为了一个通用型的php框架,一个独立的框架产品。它的定位和职责也越来越清晰:支撑了整个phpwind社区应用的运行,为它定义了统一规范的MVC流程,并提供强大的路由和视图渲染能力,灵活的应用部署方案等。windframework服务于phpwind社区产品,但也独立于phpwind社区产品。

  windfrmaework的特点

  作为一个通用的php框架,windframework在公司内部已经发行至第四版并推广使用,此次正式对外发布的版本,已经有了多项的优化和BUG修复。有很多新的项目基于windframework框架进行开发,包括即将推出的phpwind最新社区版本和社区电子商务平台,都基于windframework框架基础。在这个框架基础上,开发者进行二次开发和模板制作,将会更便捷和快速,而通过应用中心phpwind将为开发者提供更丰富更实用的应用、模板库。

  Model-View-Controller(MVC)

  wind框架提供了基础的web mvc支持(参看组件包wind/web/)。wind mvc 基于框架核心技术,提供了一种清晰的、松耦合的实现。它采用前端控制器模式,并支持强大的拦截过滤器链策略。使完全松耦合的方式集中化控制逻辑变的简单。除此以外,wind mvc 还提供了像‘模板驱动’、‘请求重定向’等特性。

  目录路径别名与import类加载

  wind框架可以将目录路径注册到系统中,并为其定义使用别名。wind框架通过import方法加载类(只支持类加载),并提供autoload支持。通过路径别名与import机制简化了路径使用、工程部署,即用即加载的模式大大提高了类加载的效率。

  组件工厂机制

  组件工厂机制是wind框架核心的基础。它基于Ioc控制反转和依赖注入的技术实现,为整个框架提供了松耦合的组件管理机制,从程序逻辑中分离出类的依赖关系和配置。组件工厂机制提供了丰富的特性支持:组件(创建、注销、获取)管理、多生命周期、配置解析管理、代理模式、lazy-init延迟加载等。通过组件工厂机制统一并简化了组件的开发与使用。

  视图管理,多模板引擎支持

  在wind框架强大的组件机制的基础上,视图管理提供了多模板引擎的支持。wind viewer组件包提供了'WindNormalViewerResolver'、'WindViewerResolver'两个视图渲染引擎。同时也支持第三方渲染引擎例如‘smarty’等。框架默认采用'WindViewerResolver'进行视图渲染,该视图渲染器支持模板编译和标签扩展。

  主题与皮肤(themes)

  wind框架中支持简单的主题与皮肤管理,通过为视图设置主题,应用可以轻松的实现多风格的支持与切换。

  模板视图的布局管理(layout)

  布局管理是通过为应用定义布局模板文件,来实现可以模板的统一布局。 wind框架支持为整个应用定义一种布局模板,也支持为每个操作定义不同的布局模板。默认情况系统不开启布局管理的,可以通过设置布局文件开启布局管理。

  模板标签支持

  wind框架默认采用了‘WindViewerResolver’视图渲染器,这个视图渲染器支持模板编译以及基于配置的自定义标签扩展。开发者可以根据需求,自定义模板标签。wind框架默认实现了几种常用标签:action、echo、lang、template、token等。

  数据输出安全过滤及数据格式化支持

  基于模板标签体系,wind框架实现了强大的数据输出支持:安全输出过滤、数据格式化等。基于这个特性,开发者可以方便的在页面以想要的格式进行变量输出,而无需担心安全问题以及数据格式化问题。

  Cache

  wind框架默认提供了cache组件和cache支持。cache组件采用了面向接口的组件设计思路,为cache使用者提供标准的cache接口定义,以及多种cache方案的实现。

  DB

  简单高效的数据持久层方案‘WindConnection’,这是一个基于PDO的数据持久化解决方案。它支持‘WindConnection’简单链接、‘WindConnectionManager’分布式链接管理两种链接模式。两种方案可以实现无缝的切换。

  请求的预处理与后处理(filter chain)

  wind框架采用了拦截过滤器模式,对请求的预处理和后处理进行了拦截和策略部署支持。开发者可以基于配置很方便的使用该特性在请求的预处理或后处理位置添加、删除、修改控制逻辑代码。

  路由协议链,多路由协议支持

  路由是wind mvc模式中的重要组件,wind框架提供了路由支持,它采用过滤链的模式来实现,一个路由器可以挂载多种路由协议。程序会根据挂载的顺序,依次去加载路由协议,直到找到可以处理当前请求的路由协议。

  Form表单对象&验证

  web mvc 默认提供了对表单处理的支持。开发者可以为一次请求创建一个表单对象,系统将会在处理具体的操作前初始化这个表单对象以及完成表单验证等工作。开发者无需在代码逻辑里面操作大量的表单数据的赋值验证,简化了开发。

  ErrorHandler自定义错误处理句柄

  自定义错误句柄是web mvc提供的又一个特性支持。wind框架默认为mvc提供了错误处理句柄‘WindErrorHandler’,默认的错误页面指向‘web/view’。开发者可以通过应用配置来指向自定义的错误处理句柄,可以为每一个module定义‘ErrorHandler’,也可以为每一个action自定义‘ErrorHandler’。wind框架在自定义配置上提供了强大且灵活的支持。

  异常体系与Logger日志

  两种基本的异常类型:‘WindFinalException’、‘WindException’。前者是终极异常,抛出该类异常表示不希望异常被系统处理而直接抛出;后者是通用异常类型,大部分自定义异常都需要继承该异常类型,该异常会被系统的错误体系处理。Logger组件,通过调用Logger组件开发者可以很方便的输出log信息,支持分类、分组输出。目前只支持本地化的文件log记录。

  多种开发模式支持WIND_DEBUG

  WIND_DEBUG支持多种模式:window、log、window&log。开发者可以通过设置‘WIND_DEBUG’这个常量的值定义wind的工作模式。

  国际化(i18n)

  简单的国际化支持:变量、语言模板等。

  安全(security)

  输入输出安全过滤,通过内置在相应的组件管理中,透明化了对数据安全的处理。wind框架还提供了security安全工具包例如:加密、解密、token等。

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Arahan sembang dan cara menggunakannya
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Selepas menyertai syarikat itu, saya faham apa itu Cache Selepas menyertai syarikat itu, saya faham apa itu Cache Jul 31, 2023 pm 04:03 PM

Perkara itu sebenarnya seperti ini Pada masa itu, ketua saya memberi saya tugas pemantauan prestasi perkakasan Semasa proses menggunakan perf, saya memasukkan senarai perf arahan dan saya melihat maklumat berikut: Tugas saya adalah untuk membolehkan peristiwa cache ini. untuk dikira secara normal. Tetapi intinya, saya tidak tahu apa maksud kehilangan dan beban ini.

Seni Bina PHP MVC: Membina Aplikasi Web untuk Masa Depan Seni Bina PHP MVC: Membina Aplikasi Web untuk Masa Depan Mar 03, 2024 am 09:01 AM

Pengenalan Dalam dunia digital yang berkembang pesat hari ini, adalah penting untuk membina aplikasi WEB yang mantap, fleksibel dan boleh diselenggara. Seni bina PHPmvc menyediakan penyelesaian yang ideal untuk mencapai matlamat ini. MVC (Model-View-Controller) ialah corak reka bentuk yang digunakan secara meluas yang memisahkan pelbagai aspek aplikasi kepada komponen bebas. Asas seni bina MVC Prinsip teras seni bina MVC ialah pengasingan kebimbangan: Model: merangkum data dan logik perniagaan aplikasi. Lihat: Bertanggungjawab untuk membentangkan data dan mengendalikan interaksi pengguna. Pengawal: Menyelaras interaksi antara model dan pandangan, mengurus permintaan pengguna dan logik perniagaan. Seni Bina PHPMVC Seni bina phpMVC mengikut corak MVC tradisional tetapi juga memperkenalkan ciri khusus bahasa. Berikut ialah PHPMVC

使用cache可以提高计算机运行速度这是因为什么 使用cache可以提高计算机运行速度这是因为什么 Dec 09, 2020 am 11:28 AM

使用cache可以提高计算机运行速度这是因为Cache缩短了CPU的等待时间。Cache是位于CPU和主存储器DRAM之间,规模较小,但速度很高的存储器。Cache的功能是提高CPU数据输入输出的速率;Cache容量小但速度快,内存速度较低但容量大,通过优化调度算法,系统的性能会大大改善。

Apakah cache? Apakah cache? Nov 25, 2022 am 11:48 AM

Cache dipanggil memori cache Ia adalah memori berkapasiti kecil berkelajuan tinggi antara unit pemprosesan pusat dan memori utama Ia biasanya terdiri daripada memori tempatan jenis ini untuk mengurangkan atau menghapuskan jurang antara CPU dan memori Kesan perbezaan kelajuan antara mereka terhadap prestasi sistem. Kapasiti cache kecil tetapi pantas, kelajuan memori rendah tetapi kapasiti besar Dengan mengoptimumkan algoritma penjadualan, prestasi sistem akan bertambah baik.

Panduan lanjutan untuk seni bina PHP MVC: membuka kunci ciri lanjutan Panduan lanjutan untuk seni bina PHP MVC: membuka kunci ciri lanjutan Mar 03, 2024 am 09:23 AM

Seni bina MVC (Model-View-Controller) adalah salah satu corak yang paling popular dalam pembangunan PHP kerana ia menyediakan struktur yang jelas untuk mengatur kod dan memudahkan pembangunan aplikasi WEB. Walaupun prinsip asas MVC mencukupi untuk kebanyakan aplikasi web, ia mempunyai beberapa had untuk aplikasi yang perlu mengendalikan data kompleks atau melaksanakan fungsi lanjutan. Mengasingkan lapisan model Mengasingkan lapisan model ialah teknik biasa dalam seni bina MVC lanjutan. Ia melibatkan memecahkan kelas model kepada subkelas yang lebih kecil, setiap satu memfokuskan pada fungsi tertentu. Contohnya, untuk aplikasi e-dagang, anda mungkin menguraikan kelas model utama kepada model pesanan, model produk dan model pelanggan. Pemisahan ini membantu meningkatkan kebolehselenggaraan dan kebolehgunaan semula kod. Gunakan suntikan pergantungan

tutorial caching proksi terbalik nginx. tutorial caching proksi terbalik nginx. Feb 18, 2024 pm 04:48 PM

Berikut ialah tutorial untuk caching proksi terbalik nginx: Pasang nginx: sudoaptupdatesudoaptinstallnginx Konfigurasikan proksi terbalik: Buka fail konfigurasi nginx: sudonano/etc/nginx/nginx.conf Tambah konfigurasi berikut dalam blok http untuk mendayakan caching: http{...proxy_cache_path /var/cache/nginxlevels=1:2keys_zone=my_cache:10mmax_size=10ginactive=60muse_temp_path=off;proxy_cache

Bagaimana untuk menggunakan cache dalam projek SpringBoot Bagaimana untuk menggunakan cache dalam projek SpringBoot May 16, 2023 pm 02:34 PM

Prakata Caching secara berkesan boleh meningkatkan prestasi dan kestabilan sistem dengan menyimpan data yang kerap diakses dalam ingatan, mengurangkan tekanan pada sumber data asas seperti pangkalan data. Saya rasa semua orang telah menggunakannya lebih kurang dalam projek mereka, dan projek kami tidak terkecuali Walau bagaimanapun, apabila saya menyemak kod syarikat baru-baru ini, penulisannya sangat bodoh dan rendah adalah seperti berikut: publicUsergetById(Stringid) {Useruser=cache. getUser();if(user!=null){returnuser;}//Dapatkan pengguna daripada pangkalan data=loadFromDB(id);cahce.put(id,user);returnu

Apakah ciri-ciri cache, rom dan ram? Apakah ciri-ciri cache, rom dan ram? Aug 26, 2022 pm 04:05 PM

Ciri-ciri cache: Satu atau dua peringkat memori berkelajuan tinggi, berkapasiti kecil di antara CPU dan memori utama Maklumat itu hilang secara semula jadi apabila komputer dimatikan. Ciri-ciri ROM: ia hanya boleh membaca data dari memori, tetapi tidak boleh menulis maklumat ke dalamnya Data masih akan wujud selepas komputer dimatikan. Ciri-ciri ram: ia boleh membaca data dari memori dan menulis maklumat ke memori; ia digunakan untuk menyimpan arahan, program dan data yang diperlukan untuk menjalankan program secara semula jadi hilang apabila komputer dimatikan;

See all articles