Есть ли способ добавить начало ссылки на неизвестный файл m3u8

Недавно я написал код, который использует file_get_contents вместе с некоторыми USER_AGENT заголовками и другими заголовками, чтобы получить источник файла m3u8, при эхо это выглядит следующим образом

#EXTM3U #EXT-X-STREAM-INF:CLOSED-CAPTIONS=NONE,RESOLUTION=1280x720,FRAME-RATE=25.000,CODECS = "avc1.4d001f,mp4a.40.2",AVERAGE-BANDWIDTH=1500000,BANDWIDTH=1870000 tracks-v1a1/mono.m3u8?token=XYZ_YIE2kpAL6yriswpbrwGAvA%3D%3D%2C1608554743.5691007667

Теперь я написал код для добавления http://example.com/mono.php? к URL-адресу (tracks-v1a1 one ) Код, который я написал,

$test_value = str_replace('tracks-v1a1/mono.m3u8?token=' . "(*^\)", "http://example.com/mono.php/tracks-v1a1/mono.m3u8?token = " . "-1/", $hs2);

Я тоже пытался использовать preg_replace, но безуспешно, может кто-нибудь найти мою ошибку.

ОТРЕДАКТИРОВАНО Согласно ссылке и коду The Fourth Bird Sir Следующий код работал как шарм

<?php

$hs2 = '#EXTM3U #EXT-X-STREAM-INF:CLOSED-CAPTIONS=NONE,RESOLUTION=1280x720,FRAME-RATE=25.000,CODECS = "avc1.4d001f,mp4a.40.2",AVERAGE-BANDWIDTH=1500000,BANDWIDTH=1870000 tracks-v1a1/mono.m3u8?token=XYZ_YIE2kpAL6yriswpbrwGAvA%3D%3D%2C1608554743.5691007667';
$pattern = "~tracks-v1a1/mono\.m3u8\?token=\S+~";
$replacement = "http://example.com/mono.php?$0";
$test_value = preg_replace($pattern, $replacement, $hs2);

echo $test_value;

Большое спасибо "Четвертой птице", сэр.

Вы ищете это? 3v4l.org/PZgli

The fourth bird 23.12.2020 21:22
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
Поиск нового уровня в Laravel с помощью MeiliSearch и Scout.
Поиск нового уровня в Laravel с помощью MeiliSearch и Scout.
Laravel Scout - это популярный пакет, который предоставляет простой и удобный способ добавить полнотекстовый поиск в ваше приложение Laravel. Он...
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для...
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для...
В последние годы архитектура микросервисов приобрела популярность как способ построения масштабируемых и гибких приложений. Laravel , популярный PHP...
Как построить CRUD-приложение в Laravel
Как построить CRUD-приложение в Laravel
Laravel - это популярный PHP-фреймворк, который позволяет быстро и легко создавать веб-приложения. Одной из наиболее распространенных задач в...
Освоение PHP и управление базами данных: Создание собственной СУБД - часть II
Освоение PHP и управление базами данных: Создание собственной СУБД - часть II
В предыдущем посте мы создали функциональность вставки и чтения для нашей динамической СУБД. В этом посте мы собираемся реализовать функции обновления...
1
1
675
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

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

Вы могли бы использовать

$hs2 = '#EXTM3U #EXT-X-STREAM-INF:CLOSED-CAPTIONS=NONE,RESOLUTION=1280x720,FRAME-RATE=25.000,CODECS = "avc1.4d001f,mp4a.40.2",AVERAGE-BANDWIDTH=1500000,BANDWIDTH=1870000 tracks-v1a1/mono.m3u8?token=XYZ_YIE2kpAL6yriswpbrwGAvA%3D%3D%2C1608554743.5691007667';
$pattern = "~tracks-v1a1/mono\.m3u8\?token=\S+~";
$replacement = "http://example.com/mono.php?$0";
$test_value = preg_replace($pattern, $replacement, $hs2);

echo $test_value;

Выход

#EXTM3U #EXT-X-STREAM-INF:CLOSED-CAPTIONS=NONE,RESOLUTION=1280x720,FRAME-RATE=25.000,CODECS = "avc1.4d001f,mp4a.40.2",AVERAGE-BANDWIDTH=1500000,BANDWIDTH=1870000 http://example.com/mono.php?tracks-v1a1/mono.m3u8?token=XYZ_YIE2kpAL6yriswpbrwGAvA%3D%3D%2C1608554743.5691007667

Посмотрите демонстрацию php

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

Похожие вопросы

Запрещено У вас нет прав доступа к этому ресурсу. Apache/2.4.46 (Win64) OpenSSL/1.1.1g PHP/7.2.34 Сервер на локальном хосте Порт 80
Преобразуйте ассоциативный массив в ассоциативный массив, который имеет ключ с другим ассоциативным массивом в качестве значения в php
Почему я не могу подключиться к общему серверу MySQL 5.3.36, используя mysqli_connect и PHP 7.4, но он будет работать, используя php 7.1?
Uncaught RangeError: превышен максимальный размер стека вызовов в вызове jquery ajax
Как скрыть субботу и воскресенье в массиве PHP
Получить идентификатор значений максимальной суммы в ассоциативном массиве
Подключите мою базу данных Firebase в реальном времени к таблице базы данных MYSQL, используя laravel
Как оставить соединение, а затем получить последнюю строку во второй таблице, используя дату
Ограничить просмотр списка в yii2 без разбиения на страницы
Как я могу сгруппировать свои данные по статусу в JS/Jquery