PHP foreach((数组))行为
我遇到了一个PHP foreach语句,我在上面找不到任何文档 以下是我难以理解的代码:PHP foreach((数组))行为,php,foreach,Php,Foreach,我遇到了一个PHP foreach语句,我在上面找不到任何文档 以下是我难以理解的代码: <?php foreach((array)$this->item->partno as $value): ?> // do some stuff <?php endforeach; ?> //做点什么 (数组)在做什么?这个foreach发生了什么事?您正在数组中铸造(转换)任何类型的$this->item->partno 在php文档中,您将在数组中铸造(
<?php foreach((array)$this->item->partno as $value): ?>
// do some stuff
<?php endforeach; ?>
//做点什么
(数组)在做什么?这个foreach发生了什么事?您正在数组中铸造(转换)任何类型的$this->item->partno
在php文档中,您将在数组中铸造(转换)任何类型的$this->item->partno
php文档中详细介绍了这一点,如果您有一个函数,并且希望它接受的参数可以是单个值或数组,则此技术非常有用。例如,您通常可以执行以下操作:
function foo($items) {
if (!is_array($items)) {
$items = array($items);
}
foreach ($items as $item) {
// ...
}
}
通过将变量强制转换为内联数组,可以避免显式数组检查,如果传递单个值或数组,代码将正常工作:
function foo($items) {
foreach ((array) $items as $item) {
// ...
}
}
foo(1);
foo([1, 2, 3]);
当您有一个函数,并且希望它接受的参数可以是单个值或数组时,此技术非常有用。例如,您通常可以执行以下操作:
function foo($items) {
if (!is_array($items)) {
$items = array($items);
}
foreach ($items as $item) {
// ...
}
}
通过将变量强制转换为内联数组,可以避免显式数组检查,如果传递单个值或数组,代码将正常工作:
function foo($items) {
foreach ((array) $items as $item) {
// ...
}
}
foo(1);
foo([1, 2, 3]);
这只是说该项是一个数组,foreach在每次迭代时都从数组中获取一个值。看起来基本搜索可能会有所帮助。@Adam-如果您不知道术语是什么,则不会。如果他不知道它叫什么,他应该搜索什么?@Utkanos-如果你了解编程的基本知识,您可以理解这是在强制转换一个对象。它只是说该项是一个数组,foreach在每次迭代时都从数组中获取一个值。看起来基本搜索在这里可能会有所帮助。@Adam-如果您不知道术语是什么,则不会。如果他不知道它叫什么,他应该搜索什么?@Utkanos-如果你了解编程的基础知识,你就可以理解这是在铸造一个对象。