GOOGLE ADS

воскресенье, 24 апреля 2022 г.

PHP для поиска в текстовом файле и эхо всей строки

Используя php, я пытаюсь создать скрипт, который будет искать в текстовом файле, захватывать всю строку и повторять ее.

У меня есть текстовый файл (.txt) под названием «numorder.txt», и в этом текстовом файле есть несколько строк данных, причем новые строки появляются каждые 5 минут (с использованием задания cron). Данные выглядят примерно так:

2 aullah1
7 name
12 username

Как мне создать php-скрипт, который будет искать данные «aullah1», а затем захватывать всю строку и повторять ее? (После повторения должно отображаться «2 aullah1» (без кавычек).

Если я что-то непонятно объяснил и/или вы хотите, чтобы я объяснил более подробно, прокомментируйте.


Решение проблемы

Использование file()и strpos():

<?php
// What to look for
$search = 'foo';
// Read from file
$lines = file('file.txt');
foreach($lines as $line)
{
// Check if the line contains the string we're looking for, and print if it does
if(strpos($line, $search)!== false)
echo $line;
}

При проверке этого файла:

фуза
барза
абча

Он выводит:

фуза

Обновление:
чтобы отобразить текст, если текст не найден, используйте что-то вроде этого:

<?php
$search = 'foo';
$lines = file('file.txt');
// Store true when the text is found
$found = false;
foreach($lines as $line)
{
if(strpos($line, $search)!== false)
{
$found = true;
echo $line;
}
}
// If the text was not found, show a message
if(!$found)
{
echo 'No match found';
}

Здесь я использую $foundпеременную, чтобы узнать, было ли найдено совпадение.

Комментариев нет:

Отправить комментарий

Laravel Datatable addColumn returns ID of one record only

Я пытаюсь использовать Yajra Datatable для интеграции DataTable на свой веб-сайт. Я смог отобразить таблицу, но столкнулся с проблемой. В по...