Ir para conteúdo
Fórum Script Brasil
  • 0

Dúvida no Código


Danielgs

Pergunta

Deixando claro sou muito iniciante mas com persistência chego lá.

bem vamos a dúvida. Estou tentando criar um sistema para ler os dados de um ponto eletrônico.  

Tenho um metodo que retorna um array de objetos bem acho que é isso .

Array
(
    [0] => Ponto Object
        (
            [registro:Ponto:private] => 5
            [data:Ponto:private] => 14/10/2020
            [horario:Ponto:private] => 12:13 - 13:13 - 18:13 - 8:13
            [usuario:Ponto:private] => Usuario Object
                (
                    [registro:Usuario:private] => 5
                    [nome:Usuario:private] => ANDERSON LUIZ
                    [diasTrabalho:Usuario:private] => SEG-SEX
                    [horarioTrabalho:Usuario:private] => 10 AS 18H
                )

        )

    [1] => Ponto Object
        (
            [registro:Ponto:private] => 4
            [data:Ponto:private] => 13/10/2020
            [horario:Ponto:private] => 15:29 - 16:11
            [usuario:Ponto:private] => Usuario Object
                (
                    [registro:Usuario:private] => 4
                    [nome:Usuario:private] => CAIO SANTOS
                    [diasTrabalho:Usuario:private] => SEG A SEX
                    [horarioTrabalho:Usuario:private] => 9 AS 15H
                )

        )
[2] => Ponto Object
        (
            [registro:Ponto:private] => 4
            [data:Ponto:private] => 14/10/2020
            [horario:Ponto:private] => 20:15
            [usuario:Ponto:private] => Usuario Object
                (
                    [registro:Usuario:private] => 4
                    [nome:Usuario:private] => CAIO SANTOS
                    [diasTrabalho:Usuario:private] => SEG A SEX
                    [horarioTrabalho:Usuario:private] => 9 AS 15H
                )

        )

    [3] => Ponto Object
        (
            [registro:Ponto:private] => 1
            [data:Ponto:private] => 13/10/2020
            [horario:Ponto:private] => 12:43 - 14:55
            [usuario:Ponto:private] => Usuario Object
                (
                    [registro:Usuario:private] => 1
                    [nome:Usuario:private] => DANIEL SANTOS
                    [diasTrabalho:Usuario:private] => SEG A SEX
                    [horarioTrabalho:Usuario:private] => 9 AS 13H
                )

        )

 

Nesse exemplo podemos ver que o CAIO se repete ao percorrer com o foreach ele me retorna :

no caso só me interessa a data e o horario das batidas no ponto no momento

 

ANDERSON LUIZ
14/10/2020 12:13 - 13:13 - 18:13 - 8:13
CAIO SANTOS
13/10/2020 15:29 - 16:11
CAIO SANTOS
14/10/2020 20:15
DANIEL SANTOS
13/10/2020 12:43 - 14:55
DANIEL SANTOS
14/10/2020 16:13
FERNANDA SANTOS
13/10/2020 15:01 - 16:13
FERNANDA SANTOS
14/10/2020 16:13
LARISSA SANTOS
13/10/2020 15:18 - 16:12
LARISSA SANTOS
14/10/2020 16:13 - 19:10

 

mas queria que o retorno fosse exemplo:


CAIO SANTOS

13/10/2020     15:29 - 16:11
14/10/2020     20:15

DANIEL SANTOS

13/10/2020    12:43 - 14:55
14/10/2020     16:13

e assim por diante.

alguém pode me ajudar pensei em criar dois foreach e entre eles um if para saber se o nome esta se repetindo mas não fui feliz.

obrigado

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0
<?php
$array=array(
    array(  
		"registro" => 5,
        "data" => "14/10/2020",
        "horario" => "12:13 - 13:13 - 18:13 - 8:13",
        "ponto" =>  array (
            "nome" => "ANDERSON LUIZ",
            "diasTrabalho" => "SEG-SEX",
            "horarioTrabalho" => "10 AS 18H" )),
    array (
		"registro" => 4,
        "data" => "13/10/2020",
        "horario" => "15:29 - 16:11",
        "ponto" => array  (
            "registro" => 4,
            "nome" => "CAIO SANTOS",
            "diasTrabalho" => "SEG A SEX",
            "horarioTrabalho" => "9 AS 15H" )),
	array  (
        "registro" => 4,
        "data" => "14/10/2020",
        "horario" => "20:15",
        "ponto" => array  (
            "registro" => 4,
            "nome" => "CAIO SANTOS",
            "diasTrabalho" => "SEG A SEX",
            "horarioTrabalho" => "9 AS 15H")),
	array (
        "registro" => 1,
        "data" => "13/10/2020",
        "horario" => "12:43 - 14:55",
        "ponto" => array   (
            "registro" => 1,
            "nome" => "DANIEL SANTOS",
            "diasTrabalho" => "SEG A SEX",
            "horarioTrabalho" => "9 AS 13H" )));
// ordenar o array
asort($array);
// listar horário de entrada por colaborador
foreach($array as $key) {
	$registro=$key['registro'];
	$nome=$key['ponto']['nome'];
	$data=$key['data'];
	$horario=$key['horario'];
	if(empty($controle)){
		$controle=$nome; echo "Registro $registro $nome <br> &nbsp &nbsp $data:$horario <br>"; goto prossegue;}
	if($controle==$nome){
		echo "<br> &nbsp &nbsp $data:$horario<br>";} else {$controle=$nome; echo "Registro $registro $nome <br> &nbsp &nbsp $data:$horario";}
prossegue: }

Resultado:

 

Registro 1 DANIEL SANTOS
    13/10/2020:12:43 - 14:55
Registro 4 CAIO SANTOS
    13/10/2020:15:29 - 16:11
    14/10/2020:20:15
Registro 5 ANDERSON LUIZ
    14/10/2020:12:13 - 13:13 - 18:13 - 8:13

 

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...