Рассмотрим следующий массив:if-statement в a for (each) -loop. продолжать против ничего
$data = array(
'0' => array(
'id' => '0',
'guid' => '22dd39bf-f6d6-4283-b87c-370354a7c2dd',
'age' => '32',
'name' => 'Harriet Vazquez',
'gender' => 'female',
'email' => '[email protected]',
'tags' => array(
'0' => 'sit',
'1' => 'mollit',
'2' => 'cillum',
'3' => 'irure',
),
'friends' => array(
'0' => array(
'id' => '0',
'name' => 'Long Dejesus',
),
'1' => array(
'id' => '1',
'name' => 'Carrillo Hodge',
),
'2' => array(
'id' => '2',
'name' => 'Coffey Greene',
),
'3' => array(
'id' => '3',
'name' => 'Stephanie Chavez',
),
'4' => array(
'id' => '4',
'name' => 'Richmond Mitchell',
),
)
),
'1' => array(
'id' => '1',
'guid' => '3df3ae55-03f3-4d7d-9c70-c7010a100886',
'age' => '36',
'name' => 'David Lynch',
'gender' => 'male',
'email' => '[email protected]',
'tags' => array(
'0' => 'id',
'1' => 'ad',
'2' => 'labore',
'3' => 'ad',
'4' => 'veniam',
'5' => 'nulla',
),
'friends' => array(
'0' => array(
'id' => '0',
'name' => 'Diana Watts',
),
'1' => array(
'id' => '1',
'name' => 'Patty Crawford',
),
'2' => array(
'id' => '2',
'name' => 'Terrell Larson',
),
)
),
'2' => array(
'id' => '2',
'guid' => 'da2c9f3f-ac85-4dfd-a43c-e55e476596ca',
'age' => '25',
'name' => 'Hardin Murphy',
'gender' => 'male',
'email' => '[email protected]',
'tags' => array(
'0' => 'laborum',
'1' => 'labore',
'2' => 'dolor',
'3' => 'excepteur',
'4' => 'est',
),
'friends' => array(
'0' => array(
'id' => '0',
'name' => 'Mandy Roberts',
),
'1' => array(
'id' => '1',
'name' => 'Walker Young',
),
'2' => array(
'id' => '2',
'name' => 'Middleton Baldwin',
),
'3' => array(
'id' => '3',
'name' => 'Tillman Harmon',
),
)
)
);
Пусть теперь создать цикл с некоторыми условиями
$accepted = array('age', 'name', 'email');
foreach ($data as $idx => $row)
{
foreach ($row as $key => $value)
{
if(!is_array($value) && in_array($key, $accepted))
{
var_dump($value) . PHP_EOL;
}
}
}
Код выше будет производить такой вывод:
string(2) "32" string(15) "Harriet Vazquez" string(26) "[email protected]" string(2) "36" string(11) "David Lynch" string(22) "[email protected]" string(2) "25" string(13) "Hardin Murphy" string(24) "[email protected]"
И теперь вопрос: Есть ли какие-либо отличия (и я имею в виду p erformance), если я добавлю заявление continue
в заявлении else
?
$accepted = array('age', 'name', 'email');
foreach ($data as $idx => $row)
{
foreach ($row as $key => $value)
{
if(!is_array($value) && in_array($key, $accepted))
{
var_dump($value) . PHP_EOL;
}
else
{
continue;
}
}
}
Что вы пытаетесь достичь здесь? В вашем примере ваш 'continue' является избыточным. Это будет иметь незначительное влияние на производительность. Есть ли еще большая проблема? –
@MikeW Я пытаюсь выяснить, как правильно использовать 'continue'. Я видел такой код, и я задавался вопросом, есть ли причины для этого ... Как вы уже сказали, он избыточен и кажется совершенно бесполезным. –
Ну, я думаю, вы нашли способ использовать 'continue '** неправильно **! –