php初始化对象和析构函数的简单实例
<?php
/**********************************************
* __construct 对象初始化函数使用
* destruct 析构函数的使用
* $this 关键字的使用($this关键字是用来访问当前对象中的对象属性和对象 * 方法的系统变量)
*
**********************************************/
header("Content-Type:text/html;charset=UTF-8");
class mypc{
public $name;
public $type;
function __construct($name='',$type=''){ //初始化对象,将初始化值放在括号内
$this->name=$name;
$this->type=$type;
}
function vod(){
return $this->name.$this->type.'播放电影';
}
function game(){
return $this->name.$this->type.'玩游戏';
}
/************************
* 当对象内部的操作执行完毕的时候,
* __destruct()被调用,
* 然后对象所使用的内存被释放出来。规则:后进先出
**************************/
function __destruct(){
echo "<br>==============".$this->name;
}
}
$pc1 = new mypc('家用电脑','台式机');
echo $pc1->vod()."<br>";
//当$pc1=null;的时候是当前实例操作完成后直接释放出对象
$pic2 = new mypc('公司电脑','笔记本');
echo $pic2->game();
相关推荐
-
PHP对象相关知识总结
对象传递:一种说法是"PHP对象是通过引用传递的",更准确的说法是别名(标识符)传递,即它们都保存着同一个标识符(ID)的拷贝,这个标识符指向同一个对象的真正内容. <?php class A { public $foo = 1; } $a = new A; $b = $a; // $a ,$b都是同一个标识符的拷贝 // ($a) = ($b) = <id> $b->foo = 2; echo $a->foo."\n";//2 $c
-
php中如何使对象可以像数组一样进行foreach循环
刚接触到题的时候,我也没有考虑到Iterator模式,试了几个一般想法,失败以后....就直接去翻看了foreach的源码实现,期望发现foreach处理对象的时候是否有什么特殊性,可以做为突破口. 跟踪了半天以后发现了核心逻辑中的一个奇怪的switch: 复制代码 代码如下: switch (zend_iterator_unwrap(array, &iter TSRMLS_CC)) { default: case ZEND_ITER_INVALID:
-
php基础知识:类与对象(3) 构造函数和析构函数
构造函数 PHP 5 允行开发者在一个类中定义一个方法作为构造函数.具有构造函数的类会在每次创建对象时先调用此方法,所以非常适合在使用对象之前做一些初始化工作. 注意: 如果子类中定义了构造函数则不会暗中调用其父类的构造函数.要执行父类的构造函数,需要在子类的构造函数中调用 parent::__construct().(??和其他语言明显不同??) 例10.8.使用新标准的构造函数 class BaseClass { function __construct() { prin
-
php对象和数组相互转换的方法
本文实例讲述了php对象和数组相互转换的方法.分享给大家供大家参考.具体分析如下: 这里定义2个php匿名对象和数组相互转换的函数,代码如下: function array2object($array) { if (is_array($array)) { $obj = new StdClass(); foreach ($array as $key => $val){ $obj->$key = $val; } } else { $obj = $array; } return $obj; } fu
-
php学习笔记 类的声明与对象实例化
复制代码 代码如下: <?php /* 类的声明 * 1.你要开发的是什么,确定写什么类 * 2.类中的成员一定要属于这个类 * [修饰类的关键字] class 类名{ * 成员属性: * 成员方法: * } * 3.在类中声明成员属性时,前面必须有修饰词,当不确定使用哪个词时,使用var或public * 一个文件只保存一个类,文件名中包含类名,文件:类名.class.php * 类名的写法: * 变量:aaaBbbCcc * 函数:aaaBbbCcc * 常量:AAABBBCCC * 类名:
-
PHP对象Object的概念 介绍
例如,员工管理应用程序可能包括一个EmPloyee 类.然后可以用这个类来创建和维护特定实例,比如Gonn和Sally. 根据预定义的类创建对象常称为类的实例化(class instantiation). 对象使用new关键字创建,如下: 复制代码 代码如下: $employee = new Employee(); 创建对象之后,这个刚实例化的对象就具有了类中定义的所有性质和行为. 如何实例化对象 面向对象程序的单位就是对象,但对象又是通过类的实例化出来的,既然我们类会声明了,下一步就是实例化对
-
常用的php对象类型判断
<HTML> <HEAD> <TITLE>php常用的数值判断函数</TITLE> </HEAD> <BODY> <? //判断数组 $colors = array("red", "blue", "green"); if(is_array($colors)) { print("colors is an array"."<br>&
-
php初始化对象和析构函数的简单实例
复制代码 代码如下: <?php /********************************************** * __construct 对象初始化函数使用 * destruct 析构函数的使用 * $this 关键字的使用($this关键字是用来访问当前对象中的对象属性和对象 * 方法的系统变量) * **********************************************/ header("Con
-
如何判断Javascript对象是否存在的简单实例
Javascript语言的设计不够严谨,很多地方一不小心就会出错. 举例来说,请考虑以下情况. 现在,我们要判断一个全局对象myObj是否存在,如果不存在,就对它进行声明.用自然语言描述的算法如下: if (myObj不存在){ 声明myObj; } 你可能会觉得,写出这段代码很容易.但是实际上,它涉及的语法问题,远比我们想象的复杂.Juriy Zaytsev指出,判断一个Javascript对象是否存在,有超过50种写法.只有对Javascript语言的实现细节非常清楚,才可能分得清它们的区别
-
C++对象的浅复制和深复制详解及简单实例
C++对象的浅复制和深复制详解及简单实例 浅复制:两个对象复制完成后共享某些资源(内存),其中一个对象的销毁会影响另一个对象 深复制:两个对象复制完成后不会共享任何资源,其中一个对象的销毁不会影响另一个对象 下面我们来看一段代码,以便直观的理解: #include<iostream> #include<string.h> using namespace std; class Student { int no; char *pname; public: Student(); Stud
-
把普通对象转换成json格式的对象的简单实例
1.什么叫做JSON? JSON只是一种数据格式(它不是一种新的数据类型) var obj = {name: "中国", age: 5000};//->普通格式的对象 var jsonObj = {"name": "中国", "age": 5000};//->JSON格式的对象 (只要把普通对象的属性名用""(不能是'')包起来,这样的格式就是我们JSON格式的对象) var data = [
-
js 声明数组和向数组中添加对象变量的简单实例
数组有四种定义的方式 使用构造函数: var a = new Array(); var b = new Array(10); var c = new Array("first", "second", "third"); 或者数组直接量: var d = ["first", "second", "third"]; 扩展: function ObjStory(id,biaoti,author
-
jquery判断对象是否为空并遍历对象的简单实例
javascript : if(document.getElementById("target_obj_id")){ } else { } jquery: 因为 $("#target_obj_id") 不管对象是否存在都会返回 object ,所以以上方法不行 1. var target_obj = jQuery('#target_obj_id'); if (target_obj.length > 0) { //如果大于0 标识 id 为target_obj_
-
JavaScript String(字符串)对象的简单实例(推荐)
返回字符串的长度: <html> <body> <script type="text/javascript"> var txt="Hello World!" document.write(txt.length) </script> </body> </html> 为字符串添加样式: <html> <body> <script type="text/java
-
js中遍历Map对象的简单实例
实例如下: console.log(jsonData);//火狐控制台打印输出: Object { fileNumber="文件编号", fileName="文件名称"} for(var key in jsonData) console.log("属性:" + key + ",值:"+ jsonData[key]); } 打印输出: 属性:fileNumber, 值:文件编号 属性:fileName, 值:文件名称 以上这篇j
-
java去除重复对象的简单实例
实例如下: import java.util.*; class Person { private String name; private int age; Person(String name,int age){ this.name=name; this.age=age; } public boolean equals(Object obj){ if(!(obj instanceof Person)) return false; Person p=(Person)obj; return thi
-
C++之类和对象课后习题简单实例
建立一个对象数组,内放5个学生的(学号,成绩),设立一个函数max,用指向对象的指针作函数参数,在max函数中找出5个学生的最高成绩者,并输出其学号. #include<iostream> using namespace std; class Student {public: Student(int=10,int=0); int number; int score; void display(); }; Student::Student(int num,int sco):number(num)
随机推荐
- jQuery基于cookie实现换肤功能实例
- 简单的Python的curses库使用教程
- asp.net 长文章通过设定的行数分页
- C#中的委托和事件学习(续)
- php实现评论回复删除功能
- C#异步委托调用实例分析
- android的UDP编程实例
- Android之PreferenceActivity应用详解(2)
- linux下安装升级mysql到新版本(5.1-5.7)
- PHP中安装使用mongodb数据库
- javascript实现的图片预览功能
- 微信小程序movable view移动图片和双指缩放实例代码
- PowerShell函数用Hash表传参实例
- Python程序设计入门(2)变量类型简介
- 在Sql Server中调用外部EXE执行程序引发的问题
- MySQL存储引擎简介及MyISAM和InnoDB的区别
- vsftp连接错误cannot locate user entry:vsftpd
- java中参数传递方式详解
- php数组函数序列之asort() - 对数组的元素值进行升序排序,保持索引关系
- C++中md5 算法实现代码