ddc
联网
平面设计 画册 VI欣赏 包装 CG-插画 搜索 个人网页 Alexa排名 CSS 建站资源 下载专区 JS特效 品牌服装 服装院校 专题欣赏 SEO 图标欣赏 专题
上海网站建设 网站建设 域名注册 虚拟主机 广州网站设计 域名注册 广州网站建设 上海网站建设 虚拟主机 广州网页设计 虚拟主机 域名注册 acg ACG玩家 品牌设计
求创科技
网站建设
中国互联
投稿
素材出售
中国设计秀
中资源
当前位置:网络学院首页 >> 编程开发 >> php >> 用Php模拟asp.net的页面模型

用Php模拟asp.net的页面模型

来源:中国设计秀    作者:    点击:14     加入收藏    发表评论
0
顶一下

用php模拟asp.net是不大可能的,特别是对于php这样的对面向对象支持不完整的动态语言来讲,更是很大的困难.在这些说模拟是说可以由这个例子来理解asp.net的运行机制(又说深了,他仅仅是一个模以而以) .代码很简单,无需细说,本测试在win2000,iis5,php 4.4.0上运行通过

page.php

<?php
/*********************************************
*Sinoprise Function Classes
*CopyRight(c):2006 Sinoprise Technology Lab
*
*Unit Name: page.php
*func:
*Crate:Shuguang Yin 2006-07-15
*********************************************/
 class SFC_Page
 {
     
     //环境变量
     /*var  $Server; 
       var  $Session;
       var  $QueryString;
       var  $Post;
       var  $Cookie;
       var  $Files;
       var  $Env;*/
 
  //页面控制属性
  var  $EnableViewState;
 
  //页面属性
  var  $CharSet;//页面字符集
  var  $PageTitle;//页面的标题
  var  $PageStyle;//页面的风格
 
  function SFC_Page()
  {
        
   /*if (strcmp(substr(PHP_VERSION,0,1),4)>=0){

     $Server =  $_SERVER; 
     $Session =  $_SESSION;
     $QueryString =  $_GET;
     $Post =  $_POST;
     $Cookie =  $_COOKIE;
     $Files =  $_FILES;
     $Env =  $_ENV;


   }else{


    global  $HTTP_SERVER_VARS, $HTTP_GET_VARS, $HTTP_POST_VARS, $HTTP_COOKIE_VARS, $HTTP_POST_FILES ;
    global  $HTTP_ENV_VARS, $HTTP_SESSION_VARS;
     $Server =  $HTTP_SERVER_VARS; 
     $Session =  $HTTP_SESSION_VARS;
     $QueryString =  $HTTP_GET_VARS;
     $Post =  $HTTP_POST_VARS;
     $Cookie =  $HTTP_COOKIE_VARS;
     $Files =  $HTTP_POST_FILES;
     $Env =  $HTTP_ENV_VARS; 

   }*/

    $this->EnableViewState = false; 

  }
  //发生在服务器状态还原之前
  function PageInit()
  {
  }

  //发生在服务器状态还原之后,但在服务器端事件之前
  function PageLoad()
  {
  }

  //发生在激发服务器端事件之后,但在生成任何东西之前
  function PagePreRender()
  {
  }

  //发生在生成页面之时
  function PageRender()
  {
  }

  //发生在网页生成完成之后
  function PageUnLoad()
  {
  }

  //显示输出
  function Display()
  {
    $this->PageInit();
   if ( $this->EnableViewState){
                        $this->DeCodeViewState();
   }
    $this->PageLoad();
    $this->PagePreRender();
   echo "<html><title>". $this->PageTitle."</title>";
   echo "<META http-equiv=Content-Type content=\"text/html; charset=". $this->CharSet."\">";
   echo "<body ". $this->PageStyle.">";
   echo "<form name=\"SFC_WebForm\" id=\"SFC_WebForm\" method=\"post\" action=\"". $_SERVER['PHP_SELF']."\">";
    $this->PageRender();
   if ( $this->EnableViewState){
                     $this->EnCodeViewState();
   }
   echo "</form></body></html>";     
    $this->PageUnLoad();

  }
 
  //判断是第一次打开还是post
  function IsPostBack()
  {
  
  }
  //对ViewState进行编码
  function EnCodeViewState()
  {
                     echo "<input type=\"hidden\" name=\"SFC_ViewState\" id=\"SFC_ViewState\" ";
                    echo "Value=\"".base64_encode(serialize( $this))."\"";
                     echo ">";
  }
  //对ViewState进行解码
  function DeCodeViewState()
  {
               if (isset( $_POST['SFC_ViewState'])){
                                 $this = unserialize(base64_decode( $_POST['SFC_ViewState']));
                 }
  }
 }
?>

页面文件,php.php

<?
 require_once('page.php');
 
 class PhpTest extends SFC_Page
 {
  var  $conut;
 
  function PhpTest()
  {
 
  }
  //发生在服务器状态还原之前
  function PageInit()
  {
  }
 
  //发生在服务器状态还原之后,但在服务器端事件之前
  function PageLoad()
  {
  }
 
  //发生在激发服务器端事件之后,但在生成任何东西之前
  function PagePreRender()
  {
  }
 
  //发生在生成页面之时
  function PageRender()
  {
            echo ++ $this->conut;  
            //echo serialize( $this);
             echo "<br>";
             echo "<input type=submit value=\"OOKK\" name=hello>";
  }
 
  //发生在网页生成完成之后
  function PageUnLoad()
  {
  } 
 }
 
  $cls = new PhpTest();
  $cls->CharSet="gb2312";
  $cls->PageTitle="页面的标题";
  $cls->EnableViewState=true;
  $cls->Display();
?>

   

2007-03-23 14:37:00    出处:
Google
热点文章/相关文章

音乐
嫁衣 画心 放生 天亮了 牡丹江 那滋味 擦肩而过 怀念过去 北京欢迎你 突然好想你 吻的太逼真 说好的幸福呢 坐上火车去拉萨 没有人比我更爱你
愚爱 心碎 稻香 带我走 醉赤壁 魔杰座 我还想她 明天过后 一定要爱你 等爱的玫瑰 原谅我一次 越单纯越幸福 最后一次的温柔 给我一首歌的时间
白狐 光荣 降临 下雨天 小酒窝 樱花草 恋爱新手 说唱脸谱 红色高跟鞋 寂寞才说爱 深深爱过你 爱上你是个错 即使知道要见面 不是因为寂寞才想你
城府 假如 花海 兰亭序 棉花糖 舍不得 最后一次 女人如烟 外滩十八号 我们的纪念 我们的无奈 心在跳情在烧 爱上你是我的错 爱情里没有谁对谁错
网站地图 | 关于我们 | 联系我们 | 网站建设 | 广告服务 | 版权声明 | 免责声明 | 网站公告 | 友情链接 | 留言 | 旧版入口