Я работаю над сценарием, который возвращает буквальное значение переменной $ title, которая находится в верхней части php
файл. В конце сценария я использую rtrim()
однако, чтобы избавиться от кавычек и точки с запятой в конце строки, они не будут обрезаться. Верхняя часть моего php
файл выглядит так:
<php
$title="Test Title";
$description="Test Description";
?>
Когда я повторяю строку, я получаю:
Test Title;"
Вот мой код Может кто-нибудь сказать мне, что я делаю не так? Я бы даже приветствовал любые предложения по улучшению этого:
<?php
//returns the value of the $title variable from the top of a php file.
$file = fopen("test.php", "r") or die("Unable to open file!");
$count = 0;
while ($count < 10) { //only check the first 10 lines
$line = fgets($file);
$isTitle = strpos($line, "itle="); //check if $title is part of the string
if ($isTitle !== false) {
$fullTitle = explode("=\"", $line); //explode it into two on =" which also trims the first quote
$untrimmedTitle = $fullTitle[1]; //save the second part of the array as a string since rtrim needs a string
$title = rtrim($untrimmedTitle, "\";"); //trim the quote and semi-colon from the string
$count = 10; //push the count up to 10 so it ends the loop
}
$count++;
}
echo $title; //show the title
fclose($file);
?>
+ Изменить $title = rtrim($untrimmedTitle, "\";");
в $title = rtrim(trim($untrimmedTitle), "\";");
, Все будет хорошо
В конце $ untrimmedTitle есть разрыв, как \n
,
В соответствии:
$title = rtrim($untrimmedTitle, "\";");
Ты тримминг "
а также ;
из строки. Вы хотите обрезать '
а также ;
:
$title = rtrim($untrimmedTitle, "\';");
Редактировать:
Почему бы просто не сделать:
include "test.php";
echo $title;
?
Или вы можете сделать это так:
$title = rtrim($untrimmedTitle, "\";\n");