programing

PHP, 계속; for each() { for each() {

telebox 2023. 9. 9. 09:27
반응형

PHP, 계속; for each() { for each() {

내부 포어가 어떤 진술을 충족할 경우에 외부 포어를 계속 사용할 수 있는 방법이 있습니까?

예를 들어

foreach($c as $v)
{
    foreach($v as $j)
    {
        if($j = 1)
        {
            continue; // But not the internal foreach. the external;
        }
    }
}

이 방법을 사용해 보십시오.

continue 2;

PHP 설명서에서:

계속은 끝까지 건너뛸 엔클로저 루프의 수준을 알려주는 선택적 숫자 인수를 사용합니다.

여기 예(정확히 2번째)에 당신이 필요로 하는 코드가 설명되어 있습니다.

시도해 보기:continue 2;매뉴얼에 따라:

continue accepts an optional numeric argument which tells it how many levels of enclosing loops it should skip to the end of. 

이 상황에서 사용할 수 있는 두 가지 해결책이 있습니다. 내부 루프에서 브레이크를 사용하여 이탈할 때 내부 루프 이후의 코드는 여전히 실행됩니다.

foreach($c as $v)
{
    foreach($v as $j)
    {
        if($j = 1)
        {
            break;
        }
    }
    echo "This line will be printed";
}

다른 해결책은 사용하는 것입니다.continue몇 단계를 뒤로하고 계속 진행할 것인지에 대해 설명합니다.

foreach($c as $v)
{
    foreach($v as $j)
    {
        if($j = 1)
        {
            continue 2;
        }
    }
    // This code will not be reached.
}

이 레벨은 계속해서 위의 레벨로 유지됩니다(따라서 각 레벨에 대해 바깥쪽이 됩니다.

 continue 2
<?php
foreach($c as $v)
{
    foreach($v as $j)
    {
        if($j = 1)
        {
            continue 2; // note the number 2
        }
    }
}
?>

RTM

대신 시도해 보십시오.continue.

따라가면 됩니다.break하나의 정수를 사용할 수 있습니다. 그것은 탈출하기 위한 고리의 수를 알려줍니다.

당신은 사용해야 합니다.break계속하는 대신에, 내가 당신을 맞추면,

여기에 그 문제에 대한 설명을 적었습니다.PHP에서 "break" 또는 "continue" 뒤에 오는 숫자는 무엇을 의미합니까?

언급URL : https://stackoverflow.com/questions/7834691/php-continue-on-foreach-foreach

반응형