Печать до определенной строки при чтении из файла на php

#php

Вопрос:

У меня есть текстовый файл, содержащий имена, которые я читаю с помощью функции file() в php, но когда я пытаюсь остановиться в определенный момент, когда найдено подходящее имя, я не получаю никаких выходных данных. пожалуйста, помогите.

 <?php 
    $data = file('names.txt');
    foreach($data as $val){
       if($val == "Amanda jackson"){
           break;
       }else{
           echo $val;
       }
    }
    
?>
 

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

1. Что вы имеете в виду под «вы не получаете никакого результата». Может ли быть так, что если вы найдете $val == "Amanda jackson Вы не генерируете никаких выходных данных?

2. Если бы вы также показали нам хотя бы часть names.txt файла, возможно, мы могли бы оказать еще большую помощь

3. Если вы получаете «Абсолютно никакого вывода», Может быть, Amanda jackson это первое имя в файле

4. вот список имен :- Эбигейл Смит Александра Роуз Элисон Рид Аманда Джексон Амелия Вуд я хочу напечатать имена, которые стоят перед Амандой Джексон, а не имена после Аманды

5. Пожалуйста, отредактируйте свой вопрос, чтобы включить любую новую информацию, которую вы предоставляете, вот где ее ищут люди

Ответ №1:

Добавьте a rtrim() , чтобы удалить новую строку из $val

 $data = file('names.txt');
foreach($data as $val){
    if(rtrim($val) == 'Amanda jackson'){
        //if you want to print Amada's name add an echo here
        break;
    }else{
        echo $val;
    }
}