类的另类用法--数据的封装
类的另类用法--数据的封装
一般的情况下,如果使用classname::property是不能访问到类的属性的,但可以用classname::method()使用类的方法。同样的也不能用objectname->property访问到类的方法里的变量。利用这一特点,我们可以将一些数据保存于类中,有点象c++的私有属性。
<?
class data {
function value($var) {
static $d = array();
if(func_num_args() > 1) {
$d[$var] = func_get_arg(1);
}else {
return $d[$var];
}
}
}
//测试:
data::value("a",1);
data::value("b",2);
echo data::value("a");
echo data::value("b");
?>
相关推荐
-
类的另类用法--数据的封装
类的另类用法--数据的封装一般的情况下,如果使用classname::property是不能访问到类的属性的,但可以用classname::method()使用类的方法.同样的也不能用objectname->property访问到类的方法里的变量.利用这一特点,我们可以将一些数据保存于类中,有点象c++的私有属性.<?class data { function value($var) { static $d = array(); if(func_num_args() > 1
-
PHP封装的page分页类定义与用法完整示例
本文实例讲述了PHP封装的page分页类定义与用法.分享给大家供大家参考,具体如下: 亲测有效,见下图=========> 1. 测试实例test.php <?php header("Content-Type: text/html; charset=utf-8"); date_default_timezone_set("Asia/Shanghai"); //时区 require_once('page.class.php'); $showrow = 5;
-
PHP封装的多文件上传类实例与用法详解
本文实例讲述了PHP封装的多文件上传类实例与用法.分享给大家供大家参考,具体如下: <?php /**//* * @(#)UploadFile.php * * 可同时处理用户多个上传文件.效验文件有效性后存储至指定目录. * 可返回上传文件的相关有用信息供其它程序使用.(如文件名.类型.大小.保存路径) * 使用方法请见本类底部(UploadFile类使用注释)信息. * */ class UploadFile { var $user_post_file = array(); //用户上传的文件
-
PHP封装的验证码工具类定义与用法示例
本文实例讲述了PHP封装的验证码工具类定义与用法.分享给大家供大家参考,具体如下: 下面分享的是我自己封装的验证码工具类,在平时的项目中会比较经常用到的工具类,目前封装的这个工具类简易版的,如果有需要的伙伴可以拿去用,当然我建议用之前在配置文件里增加一些选项信息 //验证码宽度 private $width; //验证码高度 private $height; //验证的个数 private $length; //干扰点个数 private $dots; //干扰点的类型 private $typ
-
PHP封装的分页类与简单用法示例
本文实例讲述了PHP封装的分页类与简单用法.分享给大家供大家参考,具体如下: 分页类的封装如下: page.php <?php //showPage(页号,总页数,分隔符) function showPage($page,$totalPage,$sep=" "){ $url = $_SERVER ['PHP_SELF']; //获取当前路径 $index = ($page == 1) ? "首页" : "<a href='{$url}?page
-
javascript 面向对象全新理练之数据的封装
今天主要讨论如何在 JavaScript 脚本中实现数据的封装(encapsulation).数据封装说的简单点就是把不希望调用者看见的内容隐藏起来.它是面向对象程序设计的三要素之首,其它两个是继承和多态,关于它们的内容在后面再讨论. 关于数据封装的实现,在 C++.Java.C# 等语言中是通过 public.private.static 等关键字实现的.在 JavaScript 则采用了另外一种截然不同的形式.在讨论如何具体实现某种方式的数据封装前,我们先说几个简单的,大家所熟知却又容易忽略
-
CI框架(CodeIgniter)公共模型类定义与用法示例
本文实例讲述了CI框架(CodeIgniter)公共模型类定义与用法.分享给大家供大家参考,具体如下: 我们都知道,操作数据库的方法都写在模型中.但是一般情况下,一张表往往至少对应4个操作,也就是所谓crud.那么如果20张表,所对应的模型方法,就达到了80个,重复的操作显然这已经是一个体力活儿. 那么就对单表操作时,我们进行一下简单的封装.如下是ci框架的示例: <?php /** * Created by PhpStorm. * User: kangjianrong * Date: 16-8
-
php实现的pdo公共类定义与用法示例
本文实例讲述了php实现的pdo公共类定义与用法.分享给大家供大家参考,具体如下: db.class.php : <?php class db extends \PDO { private static $_instance = null; protected $dbName = ''; protected $dsn; protected $dbh; public function __construct($dbHost, $dbUser, $dbPasswd, $dbName, $dbChar
-
基于python3 类的属性、方法、封装、继承实例讲解
Python 类 Python中的类提供了面向对象编程的所有基本功能:类的继承机制允许多个基类,派生类可以覆盖基类中的任何方法,方法中可以调用基类中的同名方法. 对象可以包含任意数量和类型的数据. python类与c++类相似,提供了类的封装,继承.多继承,构造函数.析构函数. 在python3中,所有类最顶层父类都是object类,与java类似,如果定义类的时候没有写出父类,则object类就是其直接父类. 类定义 类定义语法格式如下: class ClassName: <statement
-
VC++中图像处理类CBitmap的用法
VC++中图像处理类CBitmap的用法 class CBitmap : public CGdiObject { DECLARE_DYNAMIC(CBitmap) public: static CBitmap* PASCAL FromHandle(HBITMAP hBitmap); // Constructors CBitmap(); BOOL LoadBitmap(LPCTSTR lpszResourceName); BOOL LoadBitmap(UINT nIDResource); BOO
随机推荐
- ExtJS4的文本框(textField)使用正则表达式进行验证(Regex)的方法
- 学习从实践开始之jQuery插件开发 对话框插件开发
- Vue.js中数据绑定的语法教程
- 详解使用JS如何制作简单的ASCII图与单极图
- nginx命令参数用法详细介绍
- Mybatis调用视图和存储过程的方法
- Struts2之Action接收请求参数和拦截器详解
- Python查询IP地址归属完整代码
- Python脚本暴力破解栅栏密码
- python批量修改文件后缀示例代码分享
- asp实现的查询某关键词在MSSQL数据库位置的代码
- JavaScript DOM元素尺寸和位置
- 常用的jquery模板插件——jQuery Boilerplate介绍
- js使用eval解析json实例与注意事项分享
- 关闭页面时window.location事件未执行的原因分析及解决方案
- iframe父页面获取子页面参数的方法
- Asp.net+jquery+.ashx文件实现分页思路
- 养在深闺人未识:FU_Rootkit
- 深入Lumisoft.NET实现邮件发送功能的方法详解
- 在线竞拍系统的PHP实现框架(一)
