PHP网页设计PHP开辟利器-PRADO 1.6典范
那么接下来,这就算学会啦?NO,NO,NO,还早呢,你至尽还没碰过OOP之类的吧?模板呢?ado 第三章 典范:the Hangman Game<P> 这一章将会讲一下开辟一个基于Web的Hangman Game(猜词游戏)。这外面会用到一些PRADO的组件。这个游戏申明了显示形态使PRADO页面具有很强的交互性。 <P> 这个游戏只包含了一个页面来完成以下的功效:当用户第一次会见的时分,答应用户选择三种分歧难度来入手下手这个游戏,分歧的难度对应着分歧的可以猜错的次数。游戏入手下手后,页面的上半局部会显示要猜得单词,没有料中的字母用下划线显示。页面的下半局部列出了26个字母,用户可以点击对应字母来选摘要猜的字母。假如用户保持游戏或毛病次数超越了难度限制,会显示掉败信息;假如猜对了,会显示胜利信息。任什么时候候用户都可以从头入手下手游戏。
<P> 典范中会利用的 PRADO 组件包含:
[*]TRadioButton: 显示一个单选框。
[*]TPanel: 显示 <div> 元素。
[*]TLabel: 显示文本。
[*]TButton: 显示一个提交按钮。
[*]TLinkButton: 显示一个提交操作的超链接。
[*]TForm: 显示 <form> 元素。
<P> 这些界说好的组件经由过程属性和事务已封装好了良多功效。好比,可以设置TPanel 的Visible
属性来掌握全部<div>元素是否是可见。可以给TButton 组件的OnClick 事务指定一个呼应函数,如许当用户点击按钮的时分就会主动挪用呼应函数。请参考PRADO API文档中关于这些组件更具体的信息。 <P> 游戏中的一些数据在游戏过程当中需求一值坚持着的。由于这里只用了一个页面,所以可使用显示形态而不需求利用session来保留这些数据。上面这些数据需求保留在显示形态中:
[*]Word:要猜得单词。
[*]GuessWord: 正在猜的单词(没有料中用下划线显示)。
[*]Level:游戏的难度级别。
[*]Misses: 猜错的次数。
<P> 他们都被界说在页面的属性中(固然也能够不这么做)。
<P> 咱们需求创立6个文件。假定这个使用放在Web办事器的根目次下,这些文件是:
[*]hangman.php : 使用的主进口;
[*]WEB-INF/hangman.spec: 使用的设置装备摆设文件;
[*]WEB-INF/hangman/HomePage.php: 页面类文件;
[*]WEB-INF/hangman/HomePage.spec: 页面规格文件;
[*]WEB-INF/hangman/HomePage.tpl: 页面模板文件;
[*]WEB-INF/data/hangman.txt: 包括要猜得单词的文本文件。
<P> 上面次要讲一下HomePage 类的三个文件,其他文件和"Hello,world!"例子是相似的。
3.1HomePage.tpl
起首来讲一些页面模板文件。这个进程也是PRADO使用开辟的进程。起首在页面模板中组合PRADO组件,然后就能够测试一下这个页面的显示模样,最初编写页面类文件中需求的代码。这是一个典范的RAD(疾速使用开辟)的开辟进程。
这个模板文件的地位是 examples/hangman/HomePage.tpl .
可以看到这个模板被分红4个组件startPanel, guessPanel, winPanel, 和losePanel ;他们将依据游戏的形态来决意是不是可视。
在 startPanel中,利用了三个 TRadioButton 组件让用户可以选择游戏的难度。TButton 的OnClick 事务指定了一个呼应函数onSelectLevel ,当用户选择难度后点击了按钮就会被触发。假如用户没有选择难度,TLabel 组件会显示一个毛病提醒信息。
<P> 在 guessPanel中,三个表达式标签用于显示页面的 GuessWord, Misses,和 Level 属性。 同时还有一系列的TLinkButton 组件来显示字母A到Z,它们用于让用户点击选择猜哪个字母。不论是猜对了仍是猜错了,今后这个字母就不答应再被点击了。注重,一切的这些TLinkButton 组件都有一样的一个事务OnClick 的呼应函数onGuessWord 。 <P>winPanel 和 losePanel 会显示胜利和毛病的信息。假如用户点击了面板上的TLinkButton ,OnClick 事务的呼应函数onStartAgain 会被触发。 3.2HomePage.spec
这个页面规格文件在examples/hangman/HomePage.spec。它很复杂,就是界说了4个页面的属性: Misses, Level, GuessWord 和 Word .
3.3HomePage.php
这个页面类文件在 examples/hangman/HomePage.php .
页面类 HomePage 承继了框架供应的 TPage 类。
getter和setter函数用来界说页面属性。注重: getViewState() 和setViewState() 函数被挪用了,用来前往和坚持属性的数据。这两个函数在TPage 的父类TComponent 中完成。它们是显示形态机制的次要代码。保留在显示形态中的数据在页面的postback中是一向保留着的。
接上去完成了4个事务呼应函数: onSelectLevel(), onGuessWord(), onGiveUp() 和
onStartAgain()。它们对应着在页面模板中指定的OnClick 事务呼应函数。四个函数的详细内容就不再注释了,一看就分明。
如今你可以尝尝这个游戏,会见 /examples/hangman.php">URL:http://<Web-server-address>/examples/hangman.php。
在我开始学习PHP以前,我从未想过要做软件工程,即便是在去听过华育国际的关于软件工程的美好前景后,因为我一直都没有想过要与代码打交道,而是想学好所学专业,做个网络工程师或者是网络安全人员。 ,熟悉html,能用div+css,还有javascript,优先考虑linux。我在开始学习的时候,就想把这些知识一起学习,我天真的认为同时学习能够互相呼应,因为知识是相通的。 php是动态网站开发的优秀语言,在学习的时候万万不能冒进。在系统的学习前,我认为不应该只是追求实现某种效果,因为即使你复制他人的代码调试成功,实现了你所期望的效果,你也不了解其中的原理。 基础有没有对学习php没有太大区别,关键是兴趣。 对于初学者来说不推荐去拿钱买的。当然如果一个网站你经常去用,而且里面的资料也比较有用,最好还是买个会员比较好,毕竟那些也是别人的工作成果。 我还是强烈建议自己搭建php环境。因为在搭建的过程中你会遇到一些问题,通过搜索或是看php手册解决问题后,你会更加深刻的理解它们的工作原理,了解到php配置文件中的一些选项设置。 我要在声明一下:我是个菜鸟!!我对php这门优秀的语言也是知之甚少。但是我要在这里说一下php在网站开发中最常用的几个功能: 再就是混迹于论坛啦,咱们的phpchina的论坛就很强大,提出的问题一般都是有达人去解答的,以前的帖子也要多看看也能学到不少前辈们的经验。别的不错的论坛例如php100,javaeye也是很不错的。 我学习了一段时间后,我发现效果并不好(估计是我自身的问题)。因为一个人的精力总是有限的,同时学习这么多,会导致每个的学习时间都得不到保证。 小鸟是第一次发帖(我习惯潜水的(*^__^*) 嘻嘻……),有错误之处还请大家批评指正,另外,前些日子听人说有高手能用php写驱动程序,真是学无止境,人外有人,天外有天。 最后祝愿,php会给你带来快乐的同时 你也会给他带来快乐。 要进行开发,搭建环境是首先需要做的事,windows下面我习惯把环境那个安装在C盘下面,因为我配的环境经常出现诡异事件,什么事都没做环境有的时候就不能用啦。 学习php的目的往往是为了开发动态网站,phper就业的要求也涵盖了很多。我大致总结为:精通php和mysql 刚开始安装php的时候,我图了个省事,把php的扩展全都打开啦(就是把php.ini 那一片 extension 前面的冒号全去掉啦),这样自然有好处,以后不用再需要什么功能再来打开。 如果你可以写完像留言板这样的程序,那么你可以去一些别人的代码了, 为了以后维护的方便最好是代码上都加上注释,“予人方便,自己方便”。此外开发文档什么的最好都弄齐全。我觉得这是程序员必备的素质。虽然会消耗点很多的时间。但是确实是非常有必要的。 对于初学者来说不推荐去拿钱买的。当然如果一个网站你经常去用,而且里面的资料也比较有用,最好还是买个会员比较好,毕竟那些也是别人的工作成果。 其实也不算什么什么心得,在各位大侠算是小巫见大巫了吧,望大家不要见笑,若其中有错误的地方请各位大虾斧正。 Ps:以上纯属原创,如有雷同,纯属巧合 刚开始安装php的时候,我图了个省事,把php的扩展全都打开啦(就是把php.ini 那一片 extension 前面的冒号全去掉啦),这样自然有好处,以后不用再需要什么功能再来打开。
页:
[1]
2