PHP面向对象问题,无法获取属性

PHP面向对象问题,无法获取属性,第1张

<php

header('Content-Type:text/html;charset=utf-8');

echo PHP_VERSION'<br>';

class Person{

//成员属性

    private $name; //名字,被private封装

    private $sex; //性别,被private封装

    private $age;

//构造函数可以提供访问私有方法

    function __construct($name,$sex,$age){

        $this->name=$name;

        $this->sex=$sex;

        $this->age=$age;

        echo "我的名字叫:" $this->name;

    }

    function say(){

        echo "我的名字叫:" $this->name;//对象指向方法

    }

};

//实例化

$p1 = new Person("张三", "男", 20);

$p2 = new Person("李四", "女", 30);

$p3 = new Person("王五", "男", 40);

// 下面访问$p1对象中的说话方法

$p1->say();

// 下面访问$p2对象中的说话方法

$p2->say();

// 下面访问$p3对象中的说话方法

$p3->say();

大哥,构造函数搞错了,是 __construct

具体的概念区别你可以查看php帮助手册,我说下个人的理解:

通常来说,array是数组,而object是对象,两者有很大的区别,最主要的区别我觉得对象一般要定义行为,其目的是为了封装,而数组主要定义数据结构。

但这两种在php语言里区别比较模糊,因为php是支持范数据类型,所以array可以是object,反之亦然。

$data = $m_request_data->data; #访问对象

这一句要注意了。你这里只是临时定义个变量。要想在类中全部能用它,

class A{

可以在类中先声明它

private $data;

或者定义一个静态方法

public static $data;

然后构造方法最后一句变为

public function __construct() {

…………

$this->data= $m_request_data->data; #访问对象

//静态方法是self::data = $m_request_data->data;

}

好了这里

function data(){

print_r($this->data);//直接用,打印还是取值$this->data->value();随你~~

//静态的是print_r(self::data);

}

1 php嵌入到html中的方式:

1标准风格(推荐)

2长风格

3短风格  需要在phpini配置文件中开启short_open_tag选项才可以。

4 <% %> 兼容ASP风格(默认不支持)  需要在phpini配置文件中开启asp_tags选项才可以。

2 在php中每条语句使用分号结束的。也就是分号是php语句之间的分割符。 

注意: 在每个脚本中,最后一条语句后可以没有分号结束。 

3 在php中注释(3种):// 单行注释 (来自其他程序中的注释)#  单行注释 (来自脚本程序的注释)/   /  多行注释  注意:不可以嵌套使用。                        / / 文档注释

4 变量php是一个弱类型语言。变量的命名规范:变量是以$符开始定义的,变量名的规则:由字母、数字、下划线构成,不可以使用数字开头。在php中变量名是区分大小写

5 变量的类型:(8种)在php中共计有8种基本数据类型:4种标量类型:整数(int)、浮点数(float/double)、布尔值(boolean)、字串(string)2种复合类型:数组(array)、 对象(object)2种特殊类型:资源(resource)、 空(NULL)其中:对象和资源类型属于引用类型,其他都属于值类型。

51 整型:int类型php的整型是占4个字节(32位)的。而且是没有无负号储存值:-2147483648~214748364752 浮点数:(不区分单精度和双精度,统一占8个字节)定义:$d1 = 125;$d2 = 01e3;  //100

53 布尔值:(真true和假false)当转换为 boolean 时,以下值被认为是 FALSE: 布尔值 FALSE 自身 整型值 0 (零) 浮点型值 00 (零) 空""字符串, 以及 字符串 "0" 不包括任何元素的数组 不包括任何成员变量的对象(仅PHP 40 适用) 特殊类型 NULL (包括尚未设定的变量) 从没有任何标记(tags)的XML文档生成的SimpleXML 对象 

54 字符串(string)在php中字串的定义方式:单引号: ' ' 不支持变量解析, 支持单引号'和\的转义。双引号: " " 支持变量解析,为了兼容使用{}将变量括起来。支持转义: \n \s \t \r \" \\ \$定界符: <<<  注意接收符的使用    

55 数组array一个变量中可以储存多个值。数组分为:关联式数组和索引式数组 //定义:    $a = array(10,20,30,40);//使用:echo $a[1]; //输出:20

56 对象:

57 资源:

58 null;

6 类型转换问题:

61 布尔值/null:true在算术计算中可以自动转成数值1;false在算术计算中可以自动转成数值0;null在算术计算中可以自动转成数值0;直接输出true的值:1  false和null是没有输出结果

62 字串类型的转换字串在算术计算中可以自动转成数值:

规则:从字串前面开始找最大的数字即为数值"123abc" => 123"abc123" => 0"12a8c3" => 12"abcd" => 0"124bd" => 124"12e4abc"=> 12e47 

常量定义:  常量:一定义赋值后,不可以再次修改和销毁的量,成为常量特点: 在后面的所有程序中都可使用(对象中,函数内)  

格式:define(常量名,值[,bool]);如: define("PI",314);使用: echo PI;  

要求: 常量名必须全部大写  

目的:1便于记忆  2 便于理解 

系统中常用常量: 

echo "当前系统: PHP_OS

echo "PHP版本: PHP_VERSION

echo "当前文件名:__FILE__

 echo "当前行号: __LINE__

 echo "当前所在文件夹:__DIR__

get_defined_constants() 获取PHP中所有常量

常用函数:

gettype();获取一个变量的类型

unset();  销毁一个变量

isset();  判断一个变量是否存在

empty();  判断一个变量是否不存在。

var_dump(); 格式化输出指定变量信息(包含类型)

is_bool():判断是否是布尔型

is_int()、

is_integer()和is_long():判断是否为整型。

is_float()、is_double()和is_real():判断是否为浮点型

is_string():判断是否为字符串

is_array():判断是否为数组

is_object():判断是否为对象

s_resource():判断是否为资源类型

is_null():判断是否为null

is_scalar():判断是否为标量

is_numeric():判断是否是任何类型的数字和数字字符串

is_callable():判断是否是有效的函数名计算机的位的换算1T=1024G 1G=1024MB  1MB=1024KB  1KB = 1024B(字节)  1B(字节)=8b(位)二进制:0000 0000~1111 1111  十进制:-128~127

以上就是关于PHP面向对象问题,无法获取属性全部的内容,包括:PHP面向对象问题,无法获取属性、PHP中数据类型 array和object有什么区别、php访问对象等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9574017.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-29
下一篇 2023-04-29

发表评论

登录后才能评论

评论列表(0条)

保存