我知道地图是一种将键映射到值的数据结构.字典不一样吗?地图和字典1有什么区别?
1.我不是在询问它们是如何在X或Y语言中定义的(这似乎是人们通常在这里提出的问题),我想知道它们在理论上的区别.
我有一个神经网络的大量PHP对象,我必须迭代它并执行一些数学运算.我想知道我是否会更好地在类的实例上使用关联数组?
我正在处理周围的3640
对象并在此基础上迭代500
(最好),因此任何微优化都有很大帮助.它不可避免地会$object['value']
比这更快$object->value
吗?
编辑:所以他们都是一样的.但我想构造函数会有一点开销吗?无论哪种方式,我都不认为我想在我的漂亮类中交换脏数组:P
在工作中大量重构的过程中,我希望引入stdClass*****作为从函数返回数据的方法,并且我试图找到支持我的决定的非主观参数.
是否有任何情况何时最好使用一个而不是另一个?
使用stdClass而不是数组会有什么好处?
有些人会说函数必须尽可能少且具体,才能返回单个值.我决定使用stdClass是暂时的,因为我希望从长远来看为每个进程找到正确的Value Objects.
现在使用PHP/MySQL一段时间了,我想知道使用mysql_fetch_object()
vs mysql_fetch_assoc()
/ 是否有任何特定的优点(性能或其他)mysql_fetch_array()
.
请考虑以下代码示例:
$m_oDate = new DateTime('2013-06-12 15:54:25');
print_r($m_oDate);
echo $m_oDate->date;
Run Code Online (Sandbox Code Playgroud)
从PHP 5.3开始,这会产生(类似)以下输出:
DateTime Object
(
[date] => 2013-06-12 15:54:25
[timezone_type] => 3
[timezone] => Europe/Amsterdam
)
2013-06-12 15:54:25
Run Code Online (Sandbox Code Playgroud)
但是以下代码:
$m_oDate = new DateTime('2013-06-12 15:54:25');
echo $m_oDate->date;
Run Code Online (Sandbox Code Playgroud)
......只是发出一个错误:
Notice: Undefined property: DateTime::$date in ...
Run Code Online (Sandbox Code Playgroud)
为什么要print_r()
"添加"这些属性到对象?请注意,它们未DateTime
在手册页上定义为类的一部分.