How to Skip the 1St Key in an Array Loop

How to skip the 1st key in an array loop?

For reasonably small arrays, use array_slice to create a second one:

foreach(array_slice($_POST['info'],1) as $key=>$value)
{
echo $value;
}

Skip first element in for each loop?

if its an array why not just:

for(var i:int = 1; i < this.segments.length; i++)
{

}

Loop through an array if it finds a key, skip the index for that key, but eventually want to go back and add that index skipping the other keys

You're already doing one loop through all the products, which is a) necessary, and b) about as efficient as it gets.

The best you can do is make your code less verbose. In this case I'm using a ternary to decide which whether to use saleItems or nonSaleItems as the lvalue for += createEl(...):

products.forEach(function(item, index){
( item.sale ? saleItems : nonSaleItems ) += createEl(item);
});

items.innerHTML += nonSaleItems;
items.innerHTML += saleItems;

EDIT:

The above code won't work because the ternary evaluates to an rvalue, not an lvalue. See Javascript Ternary Operator lvalue.

However, you can use the ternary to evaluate to an object, which can be dereferenced (see https://stackoverflow.com/a/18668615/378779):

let saleItems = { html: '' }, nonSaleItems = { html: '' }
products.forEach(function(item, index){
( item.sale ? saleItems : nonSaleItems ).html += createEl(item);
});

items.innerHTML += nonSaleItems.html;
items.innerHTML += saleItems.html;

Or, with only one object, but using a ternary to determine the key:

let html = { sale: '', nonSale: '' };
products.forEach(function(item, index){
html[(item.sale ? 'sale' : 'nonSale')] += createEl(item);
});

items.innerHTML += html.nonSale;
items.innerHTML += html.sale;

How can I skip the first post in WordPress loop?

<?php query_posts( 'cat=' . $tabish['opt-box1'] . '&showposts' . $tabish['opt-box1-count'] ); 
$i = 0;
while( have_posts() ) { the_post();
if( $i > 0 ){ ?>
<div class="section-left-title">
<ul>
<li>
<a href="<?php the_permalink(); ?>"><i class="fa fa-angle-double-left"></i>
<?php the_title(); ?>
</a>
<p class="card-text"><small class="text-muted"><?php the_time('d M Y'); ?> </small></p>
</li>
</ul>
</div>
<?php
}
$i++;
}
wp_reset_query(); ?>

skip 1st value of loop

Try following code. Add one increment variable. And check that varaible

    $i =0;
foreach ($json->items as $sam){
if($i == 0)
{
$i++;
continue;
}

$link= $sam->id->videoId;

Skip first entry in for loop in python?

To skip the first element in Python you can simply write

for car in cars[1:]:
# Do What Ever you want

or to skip the last elem

for car in cars[:-1]:
# Do What Ever you want

You can use this concept for any sequence (not for any iterable though).

How to skip the first instance in a foreach loop and limit to 8?

I assume that the $articles array has keys starting with 0. How about modifying the loop like this:

foreach ($articles as $key => $article) 

and checking if $key is 0 at the beginning?

if($key == 0)
continue;

If the array keys are different: Create a new variable $i, set it to 0 and increase the value by 1 in every foreach loop iteration.

$i = 0;
foreach ($articles as $article) {
$i++;
if($i == 1)
continue;
elseif($i > 8)
break;

//the other code goes here
}

In case it is based on a SQL query, using "limit" might help to reduce load!

skip first value for variable inside of foreach loop php

UPDATE #1

Try using array_shift() like this:

foreach ($vid_pix as $vP) {
$Pt2 = get_post_meta($vP, 'photo_time', false);
$Pt = array_shift( $Pt2 ); // get first value
$Pt2[] = 'static value';
var_dump( $Pt, $Pt2 ); // test
}

UPDATE #2

If there's actually just one photo_time meta for each image/attachment (the attachment IDs are in the $vid_pix array), then this should work:

$Pt2 = [];
$n = count( $vid_pix );
for ( $i = 0, $j = 1; $i < $n; $i++, $j++ ) {
$Pt2[] = ( $n === $j ) ? 'static value' :
get_post_meta( $vid_pix[ $j ], 'photo_time', true );
}
echo implode( ', ', $Pt2 ); // test

UPDATE #3

Add the above ($Pt2) code above/before this foreach, then add the $i =>, and change the $Pt as you can see below:

foreach ($vid_pix as $i => $vP) {
$filename = basename( get_attached_file( $vP ));
$Pt = $Pt2[ $i ];
...
}

how to ignore first loop and continue from second in foreach?

$counter = 0;

foreach($doc->getElementsByTagName('a') as $a){
foreach($a->getElementsByTagName('img') as $img){

if ($counter++ == 0) continue;

echo $a->getAttribute('href');
echo $img->src . '<br>';
}
}


Related Topics



Leave a reply



Submit