linux社区爱心援助Linux认证系列教程业界动态站务新闻公司招聘建议留言网址大全LPI专题CISCO专题
设为首页
加入收藏
管理团队
JSP  
JAVA  
PERL  
 您的位置:首页 > 开发语言 > php >
栏目导栏
  php
  JSP
  ASP
  asp.net
  JAVA
  c/c++/c#
  perl
  JavaScript
  Basic
  Delphi
资料搜索
热门文章
·PHP生成静态页面的一些经验
·PHP无限分类与树型论坛的实现方
·php5学习笔记
·入门级PHP程序员面试题
·PHP 和 MySQL初学入门
·PHP入门速成
·vim的代码折叠
·文件下载统计php编程代码
·如何建立自己的新闻发布系统
·织梦CMS中文转换拼音函数研究
·Windows下Apache+Tomcat+MySQL
·PHP初学者头疼问题总结
·Cookie及其使用详细介绍
·生成sessionid和随机密码的例子
·使用无限生命期Session的方法
最新文章
·PHP入门速成
·用php实现广告轮播
·Zend Optimizer 问题浅析
·功能强大的CGI语言----PHP3
·用Session对Web页面进行保护
·PHP--进行模块化设计
·如何将PHP的结果输出到非PHP页
·如何开发一个虚拟域名系统
·PHP4调用自己编写的COM组件
·简单的页面缓冲技术(三)
·简单的页面缓冲技术(二)
·简单的页面缓冲技术(一)
·用Socket发送电子邮件(二)
·用Socket发送电子邮件(一)
·PHP/MySQL 购物车
Google
 
用Php模拟asp.net的页面模型
[ 作者:  加入时间:2007-11-22 16:17:06  来自:Linux联盟收集整理 ]
用php模拟asp.net是不大可能的,特别是对于php这样的对面向对象支持不完整的动态语言来讲,更是很大的困难.在这些说模拟是说可以由这个例子来理解asp.net的运行机制(又说深了,他仅仅是一个模以而以) .代码很简单,无需细说,本测试在win2000,iis5,php 4.4.0上运行通过 G7KLinux联盟
   G7KLinux联盟
  page.php G7KLinux联盟
   G7KLinux联盟
  <?php G7KLinux联盟
  /*********************************************** G7KLinux联盟
  *Sinoprise Function Classes G7KLinux联盟
  *CopyRight(c):2006 Sinoprise Technology Lab G7KLinux联盟
  * G7KLinux联盟
  *Unit Name: page.php G7KLinux联盟
  *func: G7KLinux联盟
  *Crate:Shuguang Yin 2006-07-15 G7KLinux联盟
  ****************************************/ G7KLinux联盟
   class SFC_Page G7KLinux联盟
   { G7KLinux联盟
   G7KLinux联盟
   G7KLinux联盟
   //环境变量 G7KLinux联盟
   /*var $Server; G7KLinux联盟
   var $Session; G7KLinux联盟
   var $QueryString; G7KLinux联盟
   var $Post; G7KLinux联盟
   var $Cookie; G7KLinux联盟
   var $Files; G7KLinux联盟
   var $Env;*/ G7KLinux联盟
   G7KLinux联盟
   G7KLinux联盟
   //页面控制属性 G7KLinux联盟
   var $EnableViewState; G7KLinux联盟
   G7KLinux联盟
   //页面属性 G7KLinux联盟
   var $CharSet;//页面字符集 G7KLinux联盟
   var $PageTitle;//页面的标题 G7KLinux联盟
   var $PageStyle;//页面的风格 G7KLinux联盟
   G7KLinux联盟
   G7KLinux联盟
   G7KLinux联盟
   G7KLinux联盟
   G7KLinux联盟
   function SFC_Page() G7KLinux联盟
   { G7KLinux联盟
   G7KLinux联盟
   G7KLinux联盟
   /*if (strcmp(substr(PHP_VERSION,0,1),4)>=0){ G7KLinux联盟
   G7KLinux联盟
   G7KLinux联盟
   $Server = $_SERVER; G7KLinux联盟
   $Session = $_SESSION; G7KLinux联盟
   $QueryString = $_GET; G7KLinux联盟
   $Post = $_POST; G7KLinux联盟
   $Cookie = $_COOKIE; G7KLinux联盟
   $Files = $_FILES; G7KLinux联盟
   $Env = $_ENV; G7KLinux联盟
   G7KLinux联盟
   G7KLinux联盟
   }else{ G7KLinux联盟
   G7KLinux联盟
   G7KLinux联盟
   global $HTTP_SERVER_VARS,$HTTP_GET_VARS,$HTTPG7KLinux联盟
_POST_VARS,$HTTP_COOKIE_VARS,$HTTP_POST_FILES ; G7KLinux联盟
   global $HTTP_ENV_VARS,$HTTP_SESSION_VARS; G7KLinux联盟
   $Server = $HTTP_SERVER_VARS; G7KLinux联盟
   $Session = $HTTP_SESSION_VARS; G7KLinux联盟
   $QueryString = $HTTP_GET_VARS; G7KLinux联盟
   $Post = $HTTP_POST_VARS; G7KLinux联盟
   $Cookie = $HTTP_COOKIE_VARS; G7KLinux联盟
   $Files = $HTTP_POST_FILES; G7KLinux联盟
   $Env = $HTTP_ENV_VARS; G7KLinux联盟
   G7KLinux联盟
   G7KLinux联盟
   }*/ G7KLinux联盟
   G7KLinux联盟
   G7KLinux联盟
   $this->EnableViewState = false; G7KLinux联盟
   G7KLinux联盟
   G7KLinux联盟
   } G7KLinux联盟
   //发生在服务器状态还原之前 G7KLinux联盟
   function PageInit() G7KLinux联盟
   { G7KLinux联盟
   } G7KLinux联盟
   G7KLinux联盟
   G7KLinux联盟
   //发生在服务器状态还原之后,但在服务器端事件之前 G7KLinux联盟
   function PageLoad() G7KLinux联盟
   { G7KLinux联盟
   } G7KLinux联盟
   G7KLinux联盟
   G7KLinux联盟
   //发生在激发服务器端事件之后,但在生成任何东西之前 G7KLinux联盟
   function PagePreRender() G7KLinux联盟
   { G7KLinux联盟
   } G7KLinux联盟
   G7KLinux联盟
   G7KLinux联盟
   //发生在生成页面之时 G7KLinux联盟
   function PageRender() G7KLinux联盟
   { G7KLinux联盟
   } G7KLinux联盟
   G7KLinux联盟
   G7KLinux联盟
   //发生在网页生成完成之后 G7KLinux联盟
   function PageUnLoad() G7KLinux联盟
   { G7KLinux联盟
   } G7KLinux联盟
   G7KLinux联盟
   G7KLinux联盟
   //显示输出 G7KLinux联盟
   function Display() G7KLinux联盟
   { G7KLinux联盟
   G7KLinux联盟
   G7KLinux联盟
   $this->PageInit(); G7KLinux联盟
   if ($this->EnableViewState){ G7KLinux联盟
   $this->DeCodeViewState(); G7KLinux联盟
   } G7KLinux联盟
   $this->PageLoad(); G7KLinux联盟
   $this->PagePreRender(); G7KLinux联盟
   echo "<html><title>".$this->PageTitle."</title>"; G7KLinux联盟
   echo "<META http-equiv=Content-Type content=\"text/html; charset=".$this->CharSet."\">"; G7KLinux联盟
   echo "<body ".$this->PageStyle.">"; G7KLinux联盟
   echo "<form name=\"SFC_WebForm\" id=\"SFC_WebForm\" method=\"post\" action=\"".$_SERVER['PHP_SELF']."\">"; G7KLinux联盟
   $this->PageRender(); G7KLinux联盟
   if ($this->EnableViewState){ G7KLinux联盟
   $this->EnCodeViewState(); G7KLinux联盟
   } G7KLinux联盟
   echo "</form></body></html>"; G7KLinux联盟
   $this->PageUnLoad(); G7KLinux联盟
   G7KLinux联盟
   G7KLinux联盟
   } G7KLinux联盟
   G7KLinux联盟
   //判断是第一次打开还是post G7KLinux联盟
   function IsPostBack() G7KLinux联盟
   { G7KLinux联盟
   G7KLinux联盟
   } G7KLinux联盟
   //对ViewState进行编码 G7KLinux联盟
   function EnCodeViewState() G7KLinux联盟
   { G7KLinux联盟
   echo "<input type=\"hidden\" name=\"SFC_ViewState\" id=\"SFC_ViewState\" "; G7KLinux联盟
   echo "Value=\"".base64_encode(serialize($this))."\""; G7KLinux联盟
   echo ">"; G7KLinux联盟
   } G7KLinux联盟
   //对ViewState进行解码 G7KLinux联盟
   function DeCodeViewState() G7KLinux联盟
   { G7KLinux联盟
   if (isset($_POST['SFC_ViewState'])){ G7KLinux联盟
   $this = unserialize(base64_decode($_POST['SFC_ViewState'])); G7KLinux联盟
   } G7KLinux联盟
   } G7KLinux联盟
   } G7KLinux联盟
  ?> G7KLinux联盟
   G7KLinux联盟
   G7KLinux联盟
   G7KLinux联盟
  页面文件,php.php G7KLinux联盟
   G7KLinux联盟
  <? G7KLinux联盟
   require_once('page.php'); G7KLinux联盟
   G7KLinux联盟
   class PhpTest extends SFC_Page G7KLinux联盟
   { G7KLinux联盟
   var $conut; G7KLinux联盟
   G7KLinux联盟
   function PhpTest() G7KLinux联盟
   { G7KLinux联盟
   G7KLinux联盟
   } G7KLinux联盟
   //发生在服务器状态还原之前 G7KLinux联盟
   function PageInit() G7KLinux联盟
   { G7KLinux联盟
   } G7KLinux联盟
   G7KLinux联盟
   //发生在服务器状态还原之后,但在服务器端事件之前 G7KLinux联盟
   function PageLoad() G7KLinux联盟
   { G7KLinux联盟
   } G7KLinux联盟
   G7KLinux联盟
   //发生在激发服务器端事件之后,但在生成任何东西之前 G7KLinux联盟
   function PagePreRender() G7KLinux联盟
   { G7KLinux联盟
   } G7KLinux联盟
   G7KLinux联盟
   //发生在生成页面之时 G7KLinux联盟
   function PageRender() G7KLinux联盟
   { G7KLinux联盟
   echo ++$this->conut; G7KLinux联盟
   //echo serialize($this); G7KLinux联盟
   echo "<br>"; G7KLinux联盟
   echo "<input type=submit value=\"OOKK\" name=hello>"; G7KLinux联盟
   } G7KLinux联盟
   G7KLinux联盟
   //发生在网页生成完成之后 G7KLinux联盟
   function PageUnLoad() G7KLinux联盟
   { G7KLinux联盟
   } G7KLinux联盟
   } G7KLinux联盟
   G7KLinux联盟
   $cls = new PhpTest(); G7KLinux联盟
   $cls->CharSet="gb2312"; G7KLinux联盟
   $cls->PageTitle="页面的标题"; G7KLinux联盟
   $cls->EnableViewState=true; G7KLinux联盟
   $cls->Display(); G7KLinux联盟
  ?> G7KLinux联盟
Linux联盟收集整理 ,转贴请标明原始链接,如有任何疑问欢迎来本站Linux论坛讨论
评论】【加入收藏夹】【 】【打印】【关闭
※ 相关链接
 ·利用PHP的OOP 特性实现数据保护  (2007-11-22 16:16:33)
 ·ppform还真是个不错的工具 — php桌面程序帮手  (2007-11-22 16:13:02)
 ·php下免费的加速器,PHP Accelerator  (2007-11-22 16:12:31)
 ·用php简单实现Search Engine Friendly的URL  (2007-11-22 16:11:12)
 ·旧题新貌:PHP截取中文字符串的问题  (2007-11-22 16:05:24)
 ·使用PHP批量生成随机用户名  (2007-11-22 14:43:54)
 ·linux下编译php的配置参数总结  (2007-11-22 14:43:21)
 ·在PHP5中使用DOM控制XML  (2007-11-22 14:42:13)
 ·在debian下为PHP5.0.3安装pdo模块  (2007-11-22 14:41:42)
 ·PHP中模板分页的处理  (2007-11-22 14:40:53)