很多站长朋友们都不太清楚php读对象属性,今天小编就来给大家整理php读对象属性,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 php访问对象属性为数组时的情况 2、 PHP得到一个Java的对象,怎么获取到这个对象里面的属性值 3、 PHP数组中可否存放对象?如果可以,那么在smarty的模板中应当如何获取对象的属性值? 4、 PHP 如何读取Javascript 对象的值? 5、 php对象属性赋值 6、 PHP面向对象问题,无法获取属性 php访问对象属性为数组时的情况一样得,例如:
<?php
class student{
private $id; //定义属性,学号
private $name; //定义属性,姓名
private $teacher;//定义属性,所属老师,array
//读取值
public function getteacher(){
$this->teacher = array('甲','乙');
return $this->teacher;
}
}
$d = new student();
$stu_teacher=$d->getteacher();
echo "<pre>";
print_r($stu_teacher);
echo "</pre>";
?>
PHP得到一个Java的对象,怎么获取到这个对象里面的属性值使用反射
public static void main(String[] args) {
Model model = new Model();
Field fd = new Field();
fd.getField(model);
}
private void getField(Object model) {
java.lang.reflect.Field[] fields = model.getClass().getDeclaredFields();
for(java.lang.reflect.Field f:fields){
System.out.println(f.getName());
}
}
PHP数组中可否存放对象?如果可以,那么在smarty的模板中应当如何获取对象的属性值?PHP的数组是支持保存对象的实例的,然后你的错误提示中也能看出是用了数组的方式来访问了一个对象。
建议你不要用对象的形式,而全部都用数组。可以用json函数来转换
$user_array=json_decode(json_encode($user_array),true);
这样一来$user_array里面就全部都是数组,其中原先对象的部分被一个包含了其所有成员属性的数组替代。
PHP 如何读取Javascript 对象的值?呵呵,这个问题我刚刚遇到过,也解决掉了,正好回答你。
Javascript端:
var data = {
"name":'aaa',
"birthday":'2011-1-1'
};
var url ="run.php?data="+data;
url = url.replace(//,"%%8%%"); //简单处理符号的get传递问题;如果传参时有数字,则尽量避免或更换替换字符串。
url = url.replace(/\?/,"%%7%%"); //简单处理?符号的get传递问题;
//js程序到了这里,会把问号、and符号都转换为特定字符。
PHP端:
$data = $_REQUEST['data'];//这里最好不要使用$_REQUEST,涉及网站安全问题。
$data = str_replace('%%8%%','',$data);//替换回原有的连接符
$data = str_replace('%%7%%','?',$data);
到这里,就又回来了!
只是经过了一个字符替换的过程,当然,你也可以采取编码的方式传输,最经典的是有一个js编码方法,然后由PHP的urlencode()函数解码,不过这种我没有使用,在js上来说,比较复杂了一些,如果你传输的数据不是太特殊,我介绍的方案已经足够使用了。
————
php对象属性赋值你这样使用时不符合oop的规范的,成员变量在最开始只能简单的定义,如果你要实现上述的代码应该这样:
class Test{
public $strtodate = 0;
public function __construct() {
$this->$strtodate = strtotime('2012-01-22');
}
}
$test = new Test();
echo $test->strtodate;
PHP面向对象问题,无法获取属性<?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读对象属性的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。