Возьмите значение массива и отделите его от остальных


Возьмите значение массива и отделите его от остальных

23.12.2019 09:27:40 Просмотров 68 Источник

Я запрашиваю у eloquent и получаю записи в массиве, мне нужно получить каждое значение команды, которое находится в записях, чтобы проверить, больше ли оно или меньше, чем значение, введенное в форму.

public function listarLojasParaValidarInsercaoHorarioLoja(string $uuidLoja,array $dados) : string
{

    $loja = $this->getByLoja($uuidLoja);
    $idLoja = $loja[0]->getLoja()->getId();

    $diaSemana = $dados['dia_semana'];


    $bancoHorario = HorarioLojaLaravel::where('loja_id', '=', $idLoja)
                        ->where('dia_semana', '=', $diaSemana)->get();
    $contarBanco = $bancoHorario->count();

    if ($contarBanco > 0) {
        $aberturaBanco = HorarioLojaLaravel::where('loja_id', '=', $idLoja)
                            ->where('dia_semana', '=', $diaSemana)
                            ->get('horario_abertura');

        $fechamentoBanco = HorarioLojaLaravel::where('loja_id', '=', $idLoja)
                               ->where('dia_semana', '=', $diaSemana)
                               ->get('horario_fechamento');

        foreach ($aberturaBanco as $key => $value) {

            $horario_abertura = $dados['horario_abertura'];
            $horario_fechamento = $dados['horario_fechamento'];

            if ($horario_abertura >= $aberturaBanco and $horario_abertura <= $fechamentoBanco || $horario_fechamento <= $fechamentoBanco and $horario_fechamento >= $horario_abertura) {
                echo $aberturaBanco;
            } else {
                echo $aberturaBanco;
            }
        }
    } else {
        return False;
    }
}

Результат вложенностями()

[{"horario_abertura":"08:00:00"},{"horario_abertura":"08:00:00"},{"horario_abertura":"08:00:00"},{"horario_abertura":"09:00:00"},{"horario_abertura":"09:00:00"}][{"horario_abertura":"08:00:00"},{"horario_abertura":"08:00:00"},{"horario_abertura":"08:00:00"},{"horario_abertura":"09:00:00"},{"horario_abertura":"09:00:00"}][{"horario_abertura":"08:00:00"},{"horario_abertura":"08:00:00"},{"horario_abertura":"08:00:00"},{"horario_abertura":"09:00:00"},{"horario_abertura":"09:00:00"}][{"horario_abertura":"08:00:00"},{"horario_abertura":"08:00:00"},{"horario_abertura":"08:00:00"},{"horario_abertura":"09:00:00"},{"horario_abertura":"09:00:00"}][{"horario_abertura":"08:00:00"},{"horario_abertura":"08:00:00"},{"horario_abertura":"08:00:00"},{"horario_abertura":"09:00:00"},{"horario_abertura":"09:00:00"}]

Мне нужно получить цифры

У вопроса есть решение - Посмотреть?

https://stackoverflow.com/questions/59459756/take-array-value-and-separate-from-the-rest#comment105101027_59459756
Мне нужно $aberturaBanco, чтобы стать только значениями массива horario_abertura, который будет 08: 00: 00
https://stackoverflow.com/questions/59459756/take-array-value-and-separate-from-the-rest#comment105101612_59459756
Да , но мне нужно быть по одному, чтобы проверить с помощью $ horario_abertura
https://stackoverflow.com/questions/59459756/take-array-value-and-separate-from-the-rest#comment105101735_59459756
@Только стоимость Хафез отдай {"horario_abertura":"08:00:00"}, мне нужно, чтобы вернуться только 08:00:00
https://stackoverflow.com/questions/59459756/take-array-value-and-separate-from-the-rest#comment105101798_59459756
echo $value = result {"открытие часов": "08: 00: 00"}

Ответы - Возьмите значение массива и отделите его от остальных / Take array value and separate from the rest

Является ответом!
Hafez Divandari

23.12.2019 10:23:16

Я догадывался, что вам нужно по Вашим комментариям, заменить ->get('horario_abertura') к ->pluck('horario_abertura') на ваш код:

$aberturaBanco = HorarioLojaLaravel::where('loja_id', '=', $idLoja)
                        ->where('dia_semana', '=', $diaSemana)
                        ->pluck('horario_abertura');

и измените свой foreach на этот:

foreach ($aberturaBanco as $key => $value) {

            $horario_abertura = $dados['horario_abertura'];
            $horario_fechamento = $dados['horario_fechamento'];

            if ($horario_abertura >= $value and $horario_abertura <= $fechamentoBanco || $horario_fechamento <= $fechamentoBanco and $horario_fechamento >= $horario_abertura) {
                echo $value;
            } else {
                echo $value;
            }
        }

Другое более простое решение - ничего не менять и использовать $value['horario_abertura'], чтобы получить нужное значение.

Пожалуйста, скажите мне, если это решит вашу проблему.

https://stackoverflow.com/questions/59459756/take-array-value-and-separate-from-the-rest/59460343#comment105101979_59460343
Ошибка: stripos () ожидает, что параметр 1 будет строкой, массив задан
https://stackoverflow.com/questions/59459756/take-array-value-and-separate-from-the-rest/59460343#comment105101991_59460343
@RichardNicson на какой линии вы получаете эту ошибку?
https://stackoverflow.com/questions/59459756/take-array-value-and-separate-from-the-rest/59460343#comment105102181_59460343
"codigo_status_http": 500," codigo_erro_zcrm":" 500"," mensagem":" stripos() ожидает, что параметр 1 будет строкой, массив задан"," linha": 1061," stack": "#0 [внутренняя функция]: Illuminate\\Foundation\\Bootstrap\\HandleExceptions->handleError(2, 'stripos() expec...', '/var / www / html / c...', 1061, массив)\Н#1 в файле /var/www в/HTML-код/код/поставщик/фреймворк Laravel/рамках/в src/освещения/базы данных/запрос/грамматики/грамматики.php (1061)​:
https://stackoverflow.com/questions/59459756/take-array-value-and-separate-from-the-rest/59460343#comment105102309_59460343
во время изменения сделать для вас значение вызовет ошибку.
https://stackoverflow.com/questions/59459756/take-array-value-and-separate-from-the-rest/59460343#comment105102348_59460343
@RichardNicson не могли бы вы попробовать pluckвместо valueи рассказать мне о результатах
https://stackoverflow.com/questions/59459756/take-array-value-and-separate-from-the-rest/59460343#comment105102387_59460343
сработало, чтобы я теперь разделил ценность на ценность?
https://stackoverflow.com/questions/59459756/take-array-value-and-separate-from-the-rest/59460343#comment105102398_59460343
["08:00:00","08:00:00","08:00:00","09:00:00","09:00:00"] берите по одному за раз
https://stackoverflow.com/questions/59459756/take-array-value-and-separate-from-the-rest/59460343#comment105102437_59460343
@RichardNicson вы можете получить один съеденный раз на вашем foreach
https://stackoverflow.com/questions/59459756/take-array-value-and-separate-from-the-rest/59460343#comment105102539_59460343
Как использовать fechamentoBanco и aberturaBanco в foreach?
https://stackoverflow.com/questions/59459756/take-array-value-and-separate-from-the-rest/59460343#comment105102608_59460343
$расписание = array_combine ($открытойбанк, $ датабанк); foreach ($расписание as $ key => $value) {
Помочь в развитии проекта:
Закрыть X