Как получить определенную часть массива из файла ical с помощью php

У меня есть файл, мне нужна вся часть с началом BEGIN:VEVENT и концом END:VEVENT, мне нужна вся эта строка, которая содержит всю эту часть в массиве, у меня есть строка ниже

BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//hacksw/handcal//NONSGML v1.0//EN
CALSCALE:GREGORIAN
BEGIN:VEVENT
LOCATION:Test Location
DESCRIPTION:Test Description
DTSTART:20190507T185657Z
DTEND:20190507T185657Z
SUMMARY:Test Summary
URL:http://xxxxxxxxx
DTSTAMP:20190507T185657Z
UID:5cdaa1cd6c3c3
END:VEVENT
BEGIN:VEVENT
LOCATION:Test Location
DESCRIPTION:Test Description
DTSTART:20190508T185657Z
DTEND:20190508T185657Z
SUMMARY:Test Summary
URL:http://xxxxxxxxx
DTSTAMP:20190508T185657Z
UID:5cdaa1cd6c3cc
END:VEVENT
END:VCALENDAR

Мне нужны эти 2 части в массиве

BEGIN:VEVENT
LOCATION:Test Location
DESCRIPTION:Test Description
DTSTART:20190507T185657Z
DTEND:20190507T185657Z
SUMMARY:Test Summary
URL:http://xxxxxxxxx
DTSTAMP:20190507T185657Z
UID:5cdaa1cd6c3c3
END:VEVENT
BEGIN:VEVENT

LOCATION:Test Location
DESCRIPTION:Test Description
DTSTART:20190508T185657Z
DTEND:20190508T185657Z
SUMMARY:Test Summary
URL:http://xxxxxxx
DTSTAMP:20190508T185657Z
UID:5cdaa1cd6c3cc
END:VEVENT

Может ли кто-нибудь помочь мне, как мы можем это получить?

Никуль, пожалуйста, прочитайте эту ссылку stackoverflow.com/help/как спросить и покажите, что вы пробовали, прежде чем просто просить других людей сделать это.

Giulio Caccin 15.05.2019 17:53
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
3
1
40
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Захватите все .* не жадные ? между начальным и конечным разделителями с помощью модификатора s (. соответствует всем символам, включая символы новой строки):

$text = file_get_contents('/path/to/file.txt');
preg_match_all('/BEGIN:VEVENT.*?END:VEVENT/s', $text, $result);
print_r($result[0]);

Другие вопросы по теме