对于每个 PHP 逻辑问题


foreach php logic issue

我在购物车数据库中有 4 条记录。我得到的结果是:4444。如何将结果更改为 1234?

视图:

$i = 0; 
foreach($carts AS $cart) {
    $x = $i+1;
    echo $x;
}

控制器:

function confirm() {
    $orders = $this->data;
    $sessionId = $this->passedArgs['ct_session_id'];
    $this->set('data', $sessionId );
    $carts = $this->Cart->find(
        'all', 
        array('conditions' => array('Cart.ct_session_id' => $sessionId), 'recursive' => 1)
    );
    $this->set(compact('carts', 'orders'));         
}
<?php
$i = 0; 
foreach($carts as $cart) {
    $i++;
    echo $i;
}
?> 

我认为您希望每次执行此指令时都递增$i,因此您必须编写: $x = ++$i;

<?php
$count = count($carts);
for($i=0; $i<$count; $i++)
{
  echo $i."</br>";
}
?>