PHP中的小问题
<?php
header("Content-type:text/html;charset=utf-8");
class Person{
private $name;
private $age;
private $sex;
public function __construct($name){
$this->name = $name;
$this->age = "23岁";
$this->sex = "男";
}
public function display(){
echo "姓名:$this->name<br>";
echo "年龄:$this->age<br>";
echo "性别:$this->sex<br>";
}
public function __destruct(){
//echo "$this->name: 正在清理内存...<br>";
}
public function __set($propertyName, $propertyValue){
if ($propertyName == "sex"){
if ($propertyValue == "男" || $propertyValue == "女"){
$this->sex = $propertyValue;
}
else{
die("赋值非法,只能是:女|男");
}
}
}
public function __get($propertyName){
if($propertyName == "sex"){
return "保密";
}
else if($propertyName == "age"){
return $this->age;
}
else if($propertyName == "name"){
return $this->name;
}
}
public function __isset($propertyName){
if($propertyName == "name"){
return false;
}
else{
return isset($this->$propertyName);
}
}
public function __unset($propertyName){
if($propertyName == "name"){
return false;
}
else{
unset($this->$propertyName);
}
}
}
$per1 = new Person("Gibi");
$per1->display();
unset($per1->sex);
$per1->display();
?>
为什么我用unset($per1->sex);删除掉类中的sex变量,然后输出是这个变量是保密,而如果删除掉unset($per1->nane);的name变量,输出的是空。请大神解释下。
...全文
相关推荐
深入解析php中的foreach问题
本篇文章是对php中的foreach问题进行了详细的分析介绍,需要的朋友参考下
PHP必须知道的300个问题
《PHP必须知道的300个问题》是2012年清华大学出版社出版的图书,作者是潘凯华。 该书以PHP基础知识结构为框架,给出了每部分知识中可能遇到的疑难问题或开发技巧。
PHP配置问题
您的PHP配置文件php.ini配置有问题,请按下面操作即可解决: 1、修改php.ini,将:short_open_tag 设为 On 2、修改后重启apache/iis方能生效。
PHP中遇到的时区问题解决方法
最近,在用PHP+MySQL编写一个小程序的时候,发现一个问题:录入数据库的时间与实际时间差8小时,这和中国位于的东8区是符合的。由于数据库时间是由PHP写入的,那问题就出现在PHP中了。
PhpStorm搭建PHP环境及PHP配置文件丢失问题
一旦你解决了php.ini文件丢失的问题,你可以在PhpStorm中指定php.ini文件的位置。在PhpStorm的PHP设置页面,找到"PHP Runtime"部分,选择你的PHP解释器,然后在"Configuration file"字段中指定php.ini文件的路径。在安装PHP时,确保正确配置,并解决任何可能出现的php.ini文件丢失的问题。安装PHP时,根据操作系统的要求进行安装。在使用PhpStorm进行PHP开发时,搭建PHP环境并正确配置PHP配置文件(php.ini)是非常重要的。


基础编程
