用php实现像JSP,ASP里Application那样的全局变量


Posted in PHP onJanuary 12, 2007
<?php 
/** 
 * 功能:实现像JSP,ASP里Application那样的全局变量 
 * author: [url]www.itzg.net[/url] 
 * version: 1.0 
 * 版权:如许转载请保留版权声明 
 */ 
/*+----------------example---------------------- 
require_once("Application.php"); 
$arr = array(0=>"Hi",1=>"Yes"); 
$a = new Application(); 
$a->setValue("t1","arui"); 
$a->setValue("arr",$arr); 
$u = $a->getValue(); 
---------------------------------------------+*/ 
class Application 
{ 
 /**保存共享变量的文件*/ 
 var $save_file    = 'Application/Application'; 
 /**共享变量的名称*/ 
 var $application  = null; 
 /**序列化之后的数据*/ 
  var $app_data    = ''; 
  /**是否已经做过setValue的操作 防止频繁写文件操作*/ 
  var $__writed    = false; 
  /** 
   * 构造函数 
   */ 
  function Application() 
  { 
   $this->application = array(); 
  } 
  /** 
   * 设置全局变量 
   * @param string $var_name 要加入到全局变量的变量名 
   * @param string $var_value 变量的值 
   */ 
  function setValue($var_name,$var_value) 
  { 
   if (!is_string($var_name) || empty($var_name)) 
    return false; 
   if ($this->__writed) 
   { 
    $this->application[$var_name] = $var_value; 
    return; 
   } 
   $this->application = $this->getValue(); 
   if (!is_array($this->application)) 
    settype($this->application,"array"); 
   $this->application[$var_name] = $var_value; 
   $this->__writed = true; 
      $this->app_data = @serialize($this->application);     
      $this->__writeToFile(); 
  } 
 /** 
  * 取得保存在全局变量里的值 
  * @return array 
  */ 
 function getValue() 
 { 
     if (!is_file($this->save_file)) 
         $this->__writeToFile(); 
     return @unserialize(@file_get_contents($this->save_file)); 
 } 
 /** 
  * 写序列化后的数据到文件 
  * @scope private 
  */ 
 function __writeToFile() 
 { 
  $fp = @fopen($this->save_file,"w"); 
  @fwrite($fp,$this->app_data); 
  @fclose($fp); 
 } 
} 
?> 

PHP 相关文章推荐
php 采集书并合成txt格式的实现代码
Mar 01 PHP
php与XML、XSLT、Mysql的结合运用实现代码
Nov 19 PHP
php skymvc 一款轻量、简单的php
Jun 28 PHP
CMS中PHP判断系统是否已经安装的方法示例
Jul 26 PHP
CI框架中cookie的操作方法分析
Dec 12 PHP
高质量PHP代码的50个实用技巧必备(下)
Jan 22 PHP
PHP封装的XML简单操作类完整实例
Nov 13 PHP
PHP判断是否是微信打开还是浏览器打开的方法
Feb 27 PHP
PHP基础之输出缓冲区基本概念、原理分析
Jun 19 PHP
Laravel 微信小程序后端搭建步骤详解
Nov 26 PHP
PHP实现二维数组(或多维数组)转换成一维数组的常见方法总结
Dec 04 PHP
50个优秀经典PHP算法大集合 附源码
Aug 26 PHP
新手配置 PHP 调试环境(IIS+PHP+MYSQL)
Jan 10 #PHP
phpfans留言版用到的install.php
Jan 04 #PHP
phpfans留言版用到的数据操作类和分页类
Jan 04 #PHP
如何隐藏你的.php文件
Jan 04 #PHP
SMARTY学习手记
Jan 04 #PHP
笑谈配置,使用Smarty技术
Jan 04 #PHP
Smarty模板快速入门
Jan 04 #PHP
You might like
在PHP中使用模板的方法
2008/05/24 PHP
ThinkPHP中U方法的使用浅析
2014/06/13 PHP
php实现支持中文的文件下载功能示例
2017/08/30 PHP
PHP连接MySQL数据库三种实现方法
2020/12/10 PHP
JavaScript中的其他对象
2008/01/16 Javascript
javascript StringBuilder类实现
2008/12/22 Javascript
javascript addBookmark 加入收藏 多浏览器兼容
2009/08/15 Javascript
jQuery源码分析-03构造jQuery对象-源码结构和核心函数
2011/11/14 Javascript
JavaScript代码编写中各种各样的坑和填坑方法
2014/06/06 Javascript
浅谈JavaScript 框架分类
2014/11/10 Javascript
jQuery实现高亮显示的方法
2015/03/10 Javascript
Windows系统下使用Sublime搭建nodejs环境
2015/04/13 NodeJs
JavaScript表单验证实例之验证表单项是否为空
2016/01/10 Javascript
Bootstrap富文本组件wysiwyg数据保存到mysql的方法
2016/05/09 Javascript
内容滑动切换效果jquery.hwSlide.js插件封装
2016/07/07 Javascript
Node.JS使用Sequelize操作MySQL的示例代码
2017/10/09 Javascript
深入浅析JSONAPI在PHP中的应用
2017/12/24 Javascript
webpack 如何同时输出压缩和未压缩的文件的实现步骤
2020/06/05 Javascript
python显示天气预报
2014/03/02 Python
python 读写txt文件 json文件的实现方法
2016/10/22 Python
Python实现动态加载模块、类、函数的方法分析
2017/07/18 Python
Python实现找出数组中第2大数字的方法示例
2018/03/26 Python
Python 通配符删除文件的实例
2018/04/24 Python
win8下python3.4安装和环境配置图文教程
2018/07/31 Python
python实现点击按钮修改数据的方法
2019/07/17 Python
Python Django2 model 查询介绍(条件、范围、模糊查询)
2020/03/16 Python
python开发前景如何
2020/06/11 Python
Python如何把字典写入到CSV文件的方法示例
2020/08/23 Python
《太阳》教学反思
2014/02/21 职场文书
大课间活动实施方案
2014/03/06 职场文书
服装发布会策划方案
2014/05/22 职场文书
建设办主任四风问题整改思路和措施
2014/09/20 职场文书
处级领导班子全部召开专题民主生活会情况汇报
2014/09/27 职场文书
2014年法务工作总结
2014/12/11 职场文书
大学生就业指导课心得体会
2016/01/15 职场文书
Python测试框架pytest高阶用法全面详解
2022/06/01 Python