Foreach循环输出
Foreach loop output
下面是输出为“SKU:1018 SKU:1026”的代码。
我无法从此代码获得所需的输出,请帮助
我想要像 "SKU:1018,1026 "
这样的输出
<?php
$new= $order->get_items();
foreach ( $new as $item ) {
$product_id = $item['product_id'];
$prod = new WC_Product($product_id);
$sku=$prod->get_sku();
echo "SKU:".$sku." ";
}
?>
您想针对字符串 SKU:
.
显示所有 SKU
并且您正在循环中打印字符串 SKU
。
而不是那样,获取数组中的所有 SKU 并使用 implode() 函数打印它。
<?php
$new= $order->get_items();
$skus = array();
foreach ( $new as $item ) {
$product_id = $item['product_id'];
$prod = new WC_Product($product_id);
$skus[] = $prod->get_sku();
}
echo "SKU:" . implode(',', $skus);
?>
使用数组处理多个字符串总是安全的,因为您可以轻松应用任何复杂的逻辑。
同样,如果没有找到数据,上面示例中的数组代码将简单地打印空白而不会导致任何错误。
试试这个:-
<?php
$new= $order->get_items();
$txt = "SKU: ";
foreach ( $new as $item ) {
$product_id = $item['product_id'];
$prod = new WC_Product($product_id);
$sku=$prod->get_sku();
$txt .= $sku.", ";
}
$txt = rtrim(", ", $txt);
echo $txt;
?>
您应该能够通过以下方式获得 SKU:1018,1026
的所需输出:
$prefix = "SKU:"
foreach ($new as $item) {
$product_id = $item['product_id'];
$prod = new WC_Product($product_id);
$sku = $prod->get_sku();
echo $prefix . $sku;
$prefix = ",";
}
这只是将初始前缀设置为 SKU:
然后,对于每个项目,输出该前缀后跟项目编号。在第一个输出后,它将前缀设置为 ,
,以便后续项将以逗号开头。
尝试使用以下代码,使用内爆获取逗号分隔的数组值。
<?php
$new= $order->get_items();
foreach ( $new as $item ) {
$product_id = $item['product_id'];
$prod = new WC_Product($product_id);
$sku[]=$prod->get_sku();
}
$skulist=implode(",",$sku);
echo "SKU:".$skulist." ";
?>
更改 $sku
到$sku[]
,一个数组,以及
最后一行
echo "SKU:".implode(",",$sku);
下面是输出为“SKU:1018 SKU:1026”的代码。 我无法从此代码获得所需的输出,请帮助
我想要像 "SKU:1018,1026 "
这样的输出 <?php
$new= $order->get_items();
foreach ( $new as $item ) {
$product_id = $item['product_id'];
$prod = new WC_Product($product_id);
$sku=$prod->get_sku();
echo "SKU:".$sku." ";
}
?>
您想针对字符串 SKU:
.
并且您正在循环中打印字符串 SKU
。
而不是那样,获取数组中的所有 SKU 并使用 implode() 函数打印它。
<?php
$new= $order->get_items();
$skus = array();
foreach ( $new as $item ) {
$product_id = $item['product_id'];
$prod = new WC_Product($product_id);
$skus[] = $prod->get_sku();
}
echo "SKU:" . implode(',', $skus);
?>
使用数组处理多个字符串总是安全的,因为您可以轻松应用任何复杂的逻辑。
同样,如果没有找到数据,上面示例中的数组代码将简单地打印空白而不会导致任何错误。
试试这个:-
<?php
$new= $order->get_items();
$txt = "SKU: ";
foreach ( $new as $item ) {
$product_id = $item['product_id'];
$prod = new WC_Product($product_id);
$sku=$prod->get_sku();
$txt .= $sku.", ";
}
$txt = rtrim(", ", $txt);
echo $txt;
?>
您应该能够通过以下方式获得 SKU:1018,1026
的所需输出:
$prefix = "SKU:"
foreach ($new as $item) {
$product_id = $item['product_id'];
$prod = new WC_Product($product_id);
$sku = $prod->get_sku();
echo $prefix . $sku;
$prefix = ",";
}
这只是将初始前缀设置为 SKU:
然后,对于每个项目,输出该前缀后跟项目编号。在第一个输出后,它将前缀设置为 ,
,以便后续项将以逗号开头。
尝试使用以下代码,使用内爆获取逗号分隔的数组值。
<?php
$new= $order->get_items();
foreach ( $new as $item ) {
$product_id = $item['product_id'];
$prod = new WC_Product($product_id);
$sku[]=$prod->get_sku();
}
$skulist=implode(",",$sku);
echo "SKU:".$skulist." ";
?>
更改 $sku
到$sku[]
,一个数组,以及
最后一行
echo "SKU:".implode(",",$sku);