Uso de loop foreach em php

Uso de loop foreach em php
Diferentes tipos de loops podem ser usados ​​no PHP. O para cada Loop é um deles. Este loop é usado principalmente para analisar matriz e variáveis ​​de objeto. Quando o número total de iterações do loop não é definido, é melhor usar um para cada loop do que outro loop. O número de iterações desse loop dependerá do número de elementos da matriz ou do número de propriedades do objeto usado no loop para a leitura dos valores. Como esse loop pode ser usado para leitura de matriz e variáveis ​​de objeto foi mostrado neste tutorial.

Sintaxe:

O para cada Loop pode ser usado para ler apenas os valores da matriz ou ler as teclas e os valores da matriz.

A seguir para cada O loop é usado para ler os valores do elemento de uma matriz. Pode ser usado para ler matrizes numéricas e associativas. Cada valor do elemento da matriz será armazenado em uma variável em cada iteração.

foreach ($ Array como $ valor)
//declarações

A seguir para cada O loop é usado para ler os valores do elemento de uma matriz. É usado principalmente para ler matrizes associativas. Em cada iteração do loop, cada chave e valor da matriz serão armazenados em duas variáveis.

foreach ($ array como $ key => $ element)
//declarações

Exemplo 1: lendo uma matriz numérica

O exemplo a seguir mostra como ler a matriz numérica usando o para cada laço. Crie um arquivo php com o seguinte script. Uma matriz numérica nomeada $ num_array de 10 elementos foi declarado no roteiro e uma matriz vazia nomeada $ new_array foi declarado para armazenar os números pares da matriz numérica. O para cada O loop tem sido usado para iterar a matriz numérica, e a declaração 'se' foi usada para descobrir os números pares do $ num_array e armazenou todos os números uniformes no $ new_array. Outro para cada Loop tem sido usado para imprimir os valores de $ num_array.

// declarar uma matriz numérica
$ num_array = matriz (12, 90, 15, 6, 32, 38, 75, 57, 60, 78);
// declarar uma matriz vazia
$ new_array = array ();
// inicialize o índice para a matriz vazia
$ index = 0;
eco "Os valores da matriz são:
";
/ * Itreate a matriz numérica para descobrir os números divisíveis por 5 e armazenar em uma nova matriz */
foreach ($ num_array como $ value)
if ($ valor%5 == 0)

$ new_array [$ index] = $ value;
$ index ++;

eco $ valor."";

eco "

A lista de números divisíveis por 5:
";
// Imprima os valores da matriz $ new_array
foreach ($ new_array como $ value)
eco $ valor."";

?>

Saída:

A saída a seguir aparecerá após a execução do script do servidor. A saída mostra que existem quatro números uniformes na matriz numérica.

Exemplo 2: Lendo uma matriz associativa

O exemplo a seguir mostra como ler uma matriz associativa e armazenar as teclas específicas da matriz para outra matriz usando um para cada laço. Aqui, a matriz associativa nomeada $ membros contém o nome do membro como chave e Presente ou ausente Como o valor da matriz. Uma matriz vazia chamada $ presente_member tem sido usado para armazenar os nomes dos membros atuais. Em seguida, o para cada Loop tem sido usado para imprimir os valores de $ presente_member.

// declarar uma matriz associativa
$ membros = array ('mehr nigar' => 'presente', 'ahmmed ali' => 'presente', 'maksudur rahman' => 'ausente', 'farzana akter' => 'presente', 'kamal hasan' = > 'Ausente');
// declarar uma matriz vazia
$ presente_members = array ();
// inicialize o índice para a matriz
$ index = 0;
// Descubra a lista de memeseiros atuais
foreach ($ membros como $ key => $ valor)
if ($ value == 'presente')
$ presente_members [$ index] = $ key;
$ index ++;


// Conte o número total de membros atuais
$ count = count ($ presente_members);
eco "$ count membros estão presentes.

";
eco "Os membros são:
";
// Imprima a lista de membros atuais
foreach ($ presente_members como $ valor)
eco $ valor. "
";

?>

Saída:

A saída a seguir aparecerá após a execução do script do servidor. A matriz associativa contém três Presente valores e dois Ausente valores. Para isso, a saída mostra três nomes do membro do $ membros Array que está presente.

Exemplo 3: Lendo as propriedades da variável de objeto


O exemplo a seguir mostra como ler os nomes de propriedades e os valores de qualquer objeto. Crie um arquivo php com o seguinte script. Uma aula chamada Cliente foi definido no script que contém três propriedades públicas com valores. Em seguida, o $ objeto A variável foi criada para acessar as propriedades da classe. A variável de objeto pode ser analisada como a matriz associativa usando o loop foreach. O para cada O loop foi usado aqui para ler o nome da propriedade e o valor da propriedade da variável de objeto, $ objeto. Cada nome e valor da propriedade do $ objeto será lido em cada iteração do loop e impresso em cada linha.

// define a classe com três propriedades
Cliente de classe

public $ name = 'mehnaz hossain';
public $ email = '[email protected] ';
public $ telefone = '0184423675';

// Crie objeto da classe
$ object = novo cliente ();
// Imprima as propriedades do objeto usando o loop foreach
eco "

Os detalhes do cliente:

";
foreach ($ objeto como $ propriedade => $ valor)

eco "$ propriedade = $ valor
";

?>

Saída:

A saída a seguir aparecerá após a execução do script do servidor. O Cliente A classe contém três propriedades: nome, e -mail e telefone. Essas propriedades são inicializadas com os valores dentro da classe. Os nomes e valores de propriedades são impressos na saída.

Exemplo-4: Lendo os valores da matriz dinâmica

Crie um arquivo php com o seguinte script para saber o uso do loop foreach para ler o conteúdo da matriz dinâmica. No script a seguir, um número aleatório entre 1 a 10 será gerado usando a função rand (). Em seguida, a função range () criará uma variedade de números com base no valor aleatório, e o loop foreach será usado para imprimir os valores da matriz.

// inicialize um número aleatório
$ número = rand (1,10);
// Imprima os valores de matriz dinâmica com base no valor aleatório]
foreach (intervalo (0, $ número) como $ valor)

eco "$ valor \ n";

?>

Saída:

A saída a seguir aparecerá após a execução do script acima.

Exemplo 5: Lendo os valores da matriz numérica bidimensional

Crie um arquivo php com o seguinte script para iterar os valores da matriz numérica bidimensional usando o loop foreach aninhado. Uma matriz bidimensional de 5 linhas e 3 colunas foi declarada no script. O loop externo foreach foi usado para ler os valores da linha da matriz, e o loop interno de foreach foi usado para ler os valores da coluna da matriz. Aqui,

 A tag foi usada para exibir a saída com o espaço da guia.

// declarar uma matriz numérica bidimensional
$ Products = Array (Array ('HDD', 'Samsung', '$ 50'),
Array ('Monitor', 'Dell', '$ 90'),
Array ('Mouse', 'A4Tech', '$ 5'),
Array ('impressora', 'HP', '$ 120'),
Array ('Ram', 'OCZ', '$ 40'));
eco "
";
// Imprima o cabeçalho
printf ("Nome \ t \ tbrand \ t \ tprice\ n ");
// imprime os valores da matriz bidimensional usando loops foreach aninhados
foreach ($ produtos como $ item)
foreach ($ item como $ valor)
// Imprima o valor com o espaço da guia
printf ("%s \ t \ t", $ valor);

eco "
";

eco "
";
?>

Saída:

A saída a seguir aparecerá após a execução do script acima.

Exemplo 6: Lendo os valores da matriz associativa multidimensional

Crie um arquivo php com o seguinte script para iterar os valores da matriz associativa bidimensional usando o loop foreach aninhado. Uma matriz bidimensional de 4 linhas e 4 colunas foi declarada no script. O loop externo foreach foi usado para ler os valores da linha da matriz, e o loop interno de foreach foi usado para ler os valores da coluna da matriz.

// Declare quatro matrizes unidimensionais de quatro elementos
$ student1 = array ("id" => 01, "nome" => "mir sabbir", "lote" => 40, "departamento" => 'cse');
$ student2 = array ("id" => 02, "nome" => "mahbubur rahman", "lote" => 45, "dept" => 'bba');
$ student3 = array ("id" => 03, "nome" => "sakil ahmed", "lote" => 48, "departamento" => 'inglês');
$ student4 = array ("id" => 04, "nome" => "Ashikur rahman", "lote" => 51, "departamento" => 'ete');
// Declare a matriz bilimente
$ mult_array = [$ Student1, $ student2, $ student3, $ student4];
// Imprima as chaves e valores da matriz associativa bilimente
foreach ($ mult_array como $ estudante)
foreach ($ estudante como $ key => $ valor)
eco " $ key : $ valor
";

eco "

";

?>

Saída:

A saída a seguir aparecerá após a execução do script acima.

Exemplo 7: encerrar o loop com base na condição específica

Crie um arquivo php com o seguinte script para iterar os valores de uma matriz associativa usando um loop foreach e pesquise uma chave específica na matriz. Se nenhum valor for fornecido no URL, 'Nenhum'será definido como o valor da pesquisa. Se a chave existir na matriz, o valor da chave correspondente será impresso e a iteração do loop será interrompida usando o quebrar declaração. Uma mensagem será impressa se a chave de pesquisa não existir na matriz.

// declarar uma matriz associativa
$ flores = ["rosa" => 90, "lírio d'água" => 87, "lotus" => 45, "cravo" => 65, "girassol" => 60, "jasmine" => 23, "papoula" => 54];
// Inicialize o valor da pesquisa
$ search = isset ($ _ get ['nome']))?$ _Get ['nome']: 'nenhum';
$ encontrado = false;
// Leia as chaves e os valores da matriz usando o loop foreach
foreach ($ flores como $ key => $ valor)

// saída do loop se o valor de pesquisa existir no loop
if ($ key == $ pesquisa)

eco "número tolal de $ key é $ valor.";
$ encontrado = true;
quebrar;


// Imprima a mensagem para pesquisa malsucedida
se ($ encontrado == false) eco "o item de pesquisa não existe."
?>

Saída:

A saída a seguir aparecerá após a execução do script acima.

Exemplo 8: Removendo os elementos específicos da matriz

Crie um arquivo php com o seguinte script para remover elementos de matriz específicos de uma matriz associativa usando um loop foreach. Duas matrizes foram declaradas no script. Um é uma matriz associativa e outro é uma matriz numérica. O valor da matriz numérica que corresponde à chave da matriz associativa será removida da matriz associativa. Os valores da matriz associativa serão impressos antes e depois de remover os elementos específicos. De acordo com os valores numéricos da matriz, três valores de matriz associativa serão removidos.

// declarar uma matriz associativa
$ flores = ["rosa" => 90, "lírio d'água" => 87, "lotus" => 45, "cravo" => 65, "girassol" => 60, "jasmine" => 23, "papoula" => 54];
eco "Os valores originais da matriz:
";
print_r ($ flores);
eco "
";
// Inicialize o valor da pesquisa
$ search = ['craveria', 'jasmine', 'papoula'];
foreach ($ pesquisa como $ search_value)

// Leia as chaves e os valores da matriz usando o loop foreach
foreach ($ flores como $ key => $ valor)

// saída do loop se o valor de pesquisa existir no loop
if ($ key == $ search_value)

// Remova o valor
Unset ($ flores [$ key]);



eco "
Os valores da matriz após remover:
";
print_r ($ flores);
eco "
";
?>

Saída:

A saída a seguir aparecerá após a execução do script acima.

Conclusão:

Os vários usos do para cada O loop no PHP foi descrito neste tutorial usando vários exemplos. As maneiras de ler diferentes matrizes e variáveis ​​de objeto usando o loop foreach foram mostradas aqui. Este loop é melhor quando os registros são recuperados de qualquer tabela de banco de dados usando PHP. Esse loop pode ser usado para ler apenas os valores da matriz ou os valores da propriedade do objeto e ler os valores da matriz com chaves ou o valor da propriedade com o nome.