- 浏览: 830404 次
- 性别:
- 来自: 南京
文章分类
最新评论
-
xieye:
jetty插件有好几个版本,1.6,1.7,1.8
我选的是用 ...
tapestry入门(翻译)3 导入项目到eclipse -
xieye:
还有,
注:第2部分时,需要先安装jetty,我自己在安装过程 ...
tapestry入门(翻译)3 导入项目到eclipse -
xieye:
说明一下:实际使用中,导入时我并没有错误。2、我把eclips ...
tapestry入门(翻译)3 导入项目到eclipse -
xieye:
其实还是有一些先决条件的。1是外部环境,2是进步是阶段性的(意 ...
(转载文章)如何愉悦起来:一位精神治疗师的见解 -
mandy_yanzi:
我都已经饿7天了坚持为了我的衣衣
身体健康的问题
高手就不要看此篇初级文章了。
最近使用php的官方框架zend,感觉是不错,不过效率也低了几倍。比写垃圾代码速度慢了很多。
安装方法:
官网下载后,把解压缩后的文件夹里的一个子文件夹Zend拷贝到include路径下就OK。
如我的php.ini
include_path=".;D:\abc\include;D:\php5\pear;"
则只要把Zend文件夹拷贝到D:\abc\include目录下或pear目录下
代码比较精致,全部是类。有点java的感觉。
特别实用的一个功能是自动加载类功能
require_once('Zend/Loader.php'); Zend_Loader::registerAutoload();
可以把上两句加到项目的某个公共加载文件里的最开头,然后
就不需要再使用include这个函数了,但前提是你的类的放置路径和类名都必须符合规范。
如类DatabaseObject_Area是放在文件Area.php里,且文件位于
D:\abc\include\DatabaseObject\Area.php
要注意大小写,明白了吧。特别简单,而且有纪律。
MVC模式也是框架的核心功能,但你也可以不用,只使用其他功能。
如使用,则需是使用apache的rewrite模块,将除js,css,img外的所有请求指向某个文件forward.php。
这个文件接受所有的动态请求,并将请求发送到各个控制器。
类的类型有:
一些公共类,
控制器类,
表单处理器类
数据类
(forward.php文件不是类)
缺省情况下,
http://www.site.com/account/login
(也可以同时跟随get或post参数)
这个url会使php访问控制器account,
这个控制器是一个php文件,文件名:AccountController.php
类名:AccountController。并且,更加具体的,是访问这个控制器类的loginAction()方法。
在这个方法中,如果没有表单,则调用一些数据类,获得一些数据,
然后把获得的数据填入一个模板,发送到页面。
如果有表单,就调用表单处理器,也是类。
表单处理器类会调用数据类,然后输出到模板。
问题是用户可能有表单输入错误。所以通常的情况是:
有表单的页面的提交对象是其自身,于是这个loginAction方法得考虑两种情况下
。
1、是没有用户输入,直接显示一个表单,
2、是有用户输入,调用表单处理器类,如正确,该转哪个页面就转哪个页面,
如错误,继续显示表单,同时显示错误信息。
3、保存会话,或保存提交的数据这些代码写在表单处理器类里。
如验证用户输入正确,则执行保存,并返回真给控制器类。
如验证错误,则什么都不执行,返回假给控制器类。
4、表单处理器类本身也有属性(基本但不完全对应数据类),会显示在表单的各个表单元素里
5、基本没ajax什么事,但如果使用的话,会提高用户体验,因为网络往返的数据量小。
还有一个奇怪的select类,
什么意思呢?
$select = $db->select(); $select->from(array('t' => 'blog_posts_tags'), array('count(*) as count', 't.tag')) ->joinInner(array('p' => 'blog_posts'), 'p.post_id = t.post_id', array()) ->where('p.user_id = ?', $user_id) ->where('p.status = ?', self::STATUS_LIVE) ->group('t.tag'); $result = $db->query($select);
如上,$user_id 是一个有值的变量。
它的意思就是,你对sql厌烦透顶,于是,它给你提供一些新花样,让你暂时忘却直接写sql的枯燥。
实用功能还有很多,感兴趣可以体验一下。
买本php web2.0开发实战,然后就可以大段的抄代码。
从现在开始,跑步进入共产主义社会。
评论
别的语言写程序都是写程序,php语言写程序却是“改程序”。我也不知道discuz好在哪边,多少人把他当个宝。
文件中是Copyright (c) 2005-2008
其实无所谓,用他的MVC框架就行了。我也不更新
还是1.9.1相比较之前的版本变化太大了?
官网的文档,版本貌似都不是1.9.1的。
崩溃呀。
dualface看来哪个框架性能好呢?
文档够多,源码简洁,不失为学习的好材料。
社区还行吧,官网更新速度快,几个群天天聊的热火朝天。
选择框架,性能和架构之外,应用案例多社区活跃也是重要的参考标准
大厂商推的极端主观的低效重型神经框架或者学院派推的没有实际应用价值的精美概念框架都无视即可
不管是php圈子还是java圈子都是这个理
正如上面提到的,所有的这些都试过了,你会发现做个无党派人士也挺爽的。
PS:推荐用国际上流行的框架,比如ZendFramework、CodeIgniter、Symfony、CakePHP等。
BTW:几天没来,PHP被拎出来了,呵呵,这倒像PHP在JE是成立了党组织了^_^
为啥不用CakePHP呢?!
zend功能更强大呗!
Zend的性能的确很有问题 除非你有钱购买高级优化方案
为啥不用CakePHP呢?!
zend功能更强大呗!
发表评论
-
召唤神龙 - 安装 centos 8, php 8, mysql 8, laravel 8 的整套 php 运行环境
2020-11-27 16:26 670本文编写时间:2020-11-27 传说集齐龙珠可以召唤神 ... -
centos8 使用阿里镜像快速安装php7.4套件
2020-11-15 00:48 806centos8 使用阿里镜像快速安装php7.4套件 本文只 ... -
centos7 使用阿里镜像快速安装php7.4套件
2020-11-15 00:32 1211本文只考虑centos7 今日 2020-11-16 rem ... -
composer常用命令
2020-11-05 14:46 1433列出当前全局配置 composer config -l -g ... -
期待centos8+php8 + mysql8 + laravel8,8888
2020-10-29 19:24 483期待centos8+php8 + mysql8 目前主要使用 ... -
ubuntu 安装 php7.4以及各类插件
2020-10-24 13:20 1084ubuntu 安装 php7.4以及各类插件 安装系统 最近 ... -
宝塔定义站点
2020-02-24 10:41 2宝塔定义站点。 1111111111111111111111 ... -
让php-fpm以root账号运行
2020-02-19 21:41 807一般来说,我们没有这种需求,但是当需要时, 可以让php-fp ... -
将代码部署到coding.net
2020-01-10 14:20 628coding.net 是一个git仓库,有免费有收费。 首先 ... -
php部署工具deployer技巧 - vendor目录创建
2020-01-06 12:06 884deployer是个好东西,可是每次都composer ,其实 ... -
自定义redis多个实例
2020-01-04 01:17 644假如多个项目部署到同一台服务器,有时会被redis的各项目前缀 ... -
推荐使用php的部署工具 deployer
2020-01-03 16:48 878php部署代码可以使用 https://deployer.or ... -
使用composer 类库 cachetool 清除opcache 的缓存
2020-01-03 16:38 958php的生产服务器上,需要把opche打开。 但有时,会被缓 ... -
laravel容器学习体会
2019-12-31 15:11 652根据文档与实测结果 假设我在app下建一个Services目 ... -
phalcon 自定义超强日志类
2019-12-18 10:00 823phalcon自带的日志文件类,有两个麻烦之处。 1、路径不能 ... -
自定义后台的使用
2019-12-18 05:22 420如果自己写后台,保存用户的表单请求值 所有的情况如下: 1 ... -
phalcon 自定义事件使用的多种方式
2019-12-16 20:43 777方法1:官方文档的方式。 这是控制器: public ... -
phalcon对控制器返回值的使用以输出json
2019-12-16 19:17 815在phalcon里,控制器的Action的方法的返回值没啥用。 ... -
phalcon数据库DB使用实例
2019-12-12 17:12 694整理了一下phalcon的db使用,写了个demo。 ... -
php-redis5.0降级成php-redis4.3
2019-08-22 00:01 887最新版本的php的redis插件,版本是5.0 但是可能会有 ...
相关推荐
- **标题**:“Zend框架入门教程”明确指出这是一份针对初学者的指南,旨在帮助用户快速掌握Zend框架的基本使用方法。 - **描述**:这份PDF格式的教程主要面向希望了解和学习Zend框架的开发者,内容基础且实用。 ##...
本资源包包含了 Zend 框架的基本组件以及一些常用的配置文件,帮助开发者更快速地熟悉并运用 Zend 框架进行项目开发。 首先,我们来深入了解一下 Zend 框架的核心概念: 1. **Model(模型)**:模型是业务逻辑和...
- **灵活性**:尽管 Zend 框架提供了一系列强大的组件和服务,但它也允许开发者根据项目需求选择性地使用其中的部分组件,而不必完全依赖整个框架。 #### 三、Zend 框架核心组件介绍 ##### 3.1 Zend_Controller -...
压缩包中的“Lite”可能表示这个框架是轻量级的,相对于原始的Zend框架,它可能去除了部分高级功能或非核心组件,以保持简洁和高效。 **反馈机制** 开发者鼓励用户在使用过程中发现和报告问题,提供了一个邮箱地址...
zend框架入门教程.pdf
在“zend”这个压缩包中,我们可能找到以下关键知识点: 1. **安装与配置**:首先,你需要下载并安装Zend Framework,这通常包括设置PHP环境,确保PHP版本符合要求(这里是5.3),并将Zend的库路径添加到你的...
Zend Framework手册 中文版 Zend Framework 版权 © 2005-2009 Zend Technologies Inc. (http://www.zend.com) 2009-08-01 算是给自己备份用的~~囧TL
ZendFramwork框架源码,下载解压即可使用
完成安装后,开发者可以通过引入 `Zend` 命名空间来使用框架中的各种组件。例如: ```php require_once 'Zend/Db.php'; // 或者使用自动加载机制 use Zend\Db; // 初始化数据库连接 $dbAdapter = new Zend\Db\...
### Zend Framework 框架开发入门教程 #### 一、简介 本文档旨在提供一个针对初学者的 **Zend Framework** 开发指南。该框架是一种基于 PHP 的开源 Web 应用框架,提供了大量的组件来帮助开发者构建高效且健壮的 ...
Zend 框架提供了简洁稳定的代码,Zend 框架具有以下特征: * 是基于 PHP 建立的。 * 是面向对象的。 * 使用 MVC 范例。 * 具有开放源码贡献者。 * 有贡献者负责保证他们的代码不是他人的知识产权。
在本教程中,我们将深入探讨如何在Zend框架中设置MySQL主从架构。 首先,理解MySQL主从复制的基本概念至关重要。主从复制是MySQL数据库的一种高可用性解决方案,其中一台服务器(主服务器)处理写操作,而其他...
zend framework的开发框架,肯定有用。是我用过最好用的一个版本了。由于这个框架比较复杂,希望能在开始就解决你的很多麻烦
zf2-documentation, Zend框架 2文档源 欢迎使用的文档 documentation发布信息本文档基于 Zend ( 主分支)联机查看文档我们使用项目来呈现Zend文档的开发版本。你可以阅读 http://zf2.readthedocs.org 中的在线文档...
Zend Framework推崇“选择性使用”原则,开发者可以根据项目需求选择使用其中的部分或全部组件,极大地提高了开发效率和代码质量。 **二、CMS系统的核心功能** CMS系统通常包含以下核心功能: 1. **内容创建与...
"Zend开发手册"是理解并精通这个框架的关键资源,它详细介绍了框架的各个组件和使用方法。 **一、Zend Framework 概述** Zend Framework 是由 Zend Technologies 创建的,其设计目标是提供一套企业级的PHP组件,以...
### Zend框架手册介绍 #### 一、Zend Framework概述 ##### 1.1 概述 **Zend Framework** 是一个高质量的开源PHP框架,专为Web应用程序和服务开发而设计。该框架充分利用了PHP语言的特性,提供了高度易用且功能...