我已经看过这个用了很多,尤其是SimpleXML.
这是:
$row->unixtime
Run Code Online (Sandbox Code Playgroud)
就像这样做???
$row[unixtime]
Run Code Online (Sandbox Code Playgroud)
这叫什么,为什么/应该如何使用?
Mik*_*e B 24
$row->unixtime
Run Code Online (Sandbox Code Playgroud)
$ row是一个对象.unixtime是该对象的属性.
$row[unixtime] // I hope you meant $row['unixtime'];
Run Code Online (Sandbox Code Playgroud)
$ row是一个(关联)数组.unixtime是该阵列中的关键.
问"对象是什么"有点模糊.
开始使用OOP并非易事.学习语法和细微差别需要花费很长时间,有时需要更多时间来理解它们的优点,并且需要多年(可以说)才能有效地使用它.
mau*_*ris 10
这完全不同.
第一个,$row->unixtime
意味着您正在访问$unixtime
类的对象/实例的公共变量$row
.这是面向对象的编程.
例:
class example{
public $unixtime = 1234567890;
}
$row = new example();
echo $row->unixtime; // echos 1234567890
Run Code Online (Sandbox Code Playgroud)
第二个是获取'unixtime'
数组的密钥$row
.这称为关联数组.例:
$row = array(
'unixtime' => 1234567890
);
echo $row['unixtime']; // echos 1234567890
Run Code Online (Sandbox Code Playgroud)
您可以使用(array)
和(object)
强制转换轻松地在对象和数组之间进行转换.例:
$row = array(
'unixtime' => 1234567890
);
$row = (object)$row;
echo $row->unixtime; // echos 1234567890
Run Code Online (Sandbox Code Playgroud)
偏离主题:我实际上错过了二月份的unix纪元时间1234567890.
不,他们不一样.它是关于面向对象的编程.
->
表示访问对象成员.例如:
class Test {
public $foo;
public $blah;
}
$test = new Test;
$test->foo = 'testing';
Run Code Online (Sandbox Code Playgroud)
[]
是一个数组访问运算符,由真正的数组使用.如果对象实现了ArrayAccess
接口,它们也可以使用它:
class Test2 implements ArrayAccess {
private $foo = array();
public function offsetGet($index) { return $this->foo[$index]; }
// rest of interface
}
$test2 = new Test2
$test2['foo'] = 'bar';
Run Code Online (Sandbox Code Playgroud)