Php if语句上的两个foreach循环
想知道是否有可能对if语句进行foreach循环调用,如下所示:Php if语句上的两个foreach循环,php,loops,if-statement,foreach,Php,Loops,If Statement,Foreach,想知道是否有可能对if语句进行foreach循环调用,如下所示: if (class_exists('WooCommerce')) { foreach (array_combine($val1, $val2) as $key => $row_values) } else { foreach ( $val1 as $key => $row_values ) } { begin of loop code 如果woocommerce插件处于活动状态,我会尝试使用一个
if (class_exists('WooCommerce')) {
foreach (array_combine($val1, $val2) as $key => $row_values)
}
else {
foreach ( $val1 as $key => $row_values )
}
{ begin of loop code
如果woocommerce插件处于活动状态,我会尝试使用一个foreach循环,如果woocommerce插件未处于活动状态,则尝试使用另一个foreach循环。这是不可能的,因为这是无效语法 你能做的就是这样:
<?php
$iterationArray = class_exists('WooCommerce') ? array_combine($val1, $val2) : $val1;
foreach ($iterationArray as $key => $row_values) {
// begin of loop code
} // end loop
这是不可能的,因为这是无效的语法
你能做的就是这样:
<?php
$iterationArray = class_exists('WooCommerce') ? array_combine($val1, $val2) : $val1;
foreach ($iterationArray as $key => $row_values) {
// begin of loop code
} // end loop
如果在循环之前设置了一个条件来分配将用于循环的变量,您需要做什么,如下所示:
if ( class_exists( 'WooCommerce' ) ) {
$newVal = array_combine($val1, $val2);
} else {
$newVal = $val1;
}
foreach ( $newVal as $key => $row_values ) {
// do stuff
}
结果将与您尝试执行的操作相同。但是您在问题中提出的语法在PHP中不受支持,可以使用上面提出的方法进行处理。如果循环前有一个条件来分配将用于循环的变量,您需要做什么,如下所示:
if ( class_exists( 'WooCommerce' ) ) {
$newVal = array_combine($val1, $val2);
} else {
$newVal = $val1;
}
foreach ( $newVal as $key => $row_values ) {
// do stuff
}
结果将与您尝试执行的操作相同。但是您在问题中提出的语法在PHP中不受支持,可以用上面提出的方法解决。不知道您的意思。if()语句中已经有两个foreach。否。您可以将数组只分配给if/else中的一个变量,然后在foreach循环中使用分配的数组。您可以与我们分享您尝试执行的操作吗?不知道您的意思。if()语句中已经有两个foreach。否。您可以将数组只分配给if/else中的一个变量,然后在foreach循环中使用分配的数组。您可以与我们分享您正在尝试的操作吗?