使用 substr() 从字符串中删除最后一个字符不起作用
Removing the last character from a string using substr() is not working
我正在尝试从 GMAIL 原始电子邮件视图中获取 HTML 模板,问题是 gmail 在每一行的末尾添加了一个 =
字符。
我使用 foreach
循环遍历行并删除“=”字符,但它仍然根本不起作用。
我还有一个if
语句来验证角色的存在。
示例 GMAIL 原始视图行:
body[dir=3Drtl] .directional_text_wrapper { direction: rtl; unicode-bid=
i: embed; }
</style>
</head>
<body lang=3D"en-us" style=3D"width:100%!important;margin:0;padding:0">
<div style=3D"padding:10px;line-height:18px;font-family:'Lucida Grand=
e',Verdana,Arial,sans-serif;font-size:12px;color:#444444">
代码:
<?php
$original_email=file("original.html");
foreach ($original_email as $line)
{
$sbstr=substr($line,-2,1);
if( $sbstr == "="){
echo $substr;
}
}
?>
更新
我试过使用 rtrim()
函数,但没有成功。
更新后的代码:
<?php
$original_email=file("original.html");
foreach ($original_email as $line)
{
/*
$sbstr=substr($line,-2,1);
if( $sbstr == "="){
echo $substr;
}
*/
rtrim($line,"=");
}
?>
您可以使用PHP函数rtrim
rtrim — Strip whitespace (or other characters) from the end of a string
使用以下语法删除行尾的=
$line = rtrim($line, "=");
使用 rtim 函数
rtrim ( $sbstr,"=")
我已经删除了每行中添加的“3D”,并制作了一个循环来剪切行尾并检查它是否等于 "="
,如果是,它使用 substr
.
<?php
$original_email=file("original.html");
foreach ($original_email as $line)
{
$line=str_replace("3D","",$line);
if($sbstr=substr($line,-2,1) == "=")
{
$ln=substr($line,0,strlen($line)-2);
echo htmlentities($ln)."<br>";
}
}
?>
首先尝试 trim 您的字符串使用 trim 来获取空格,然后使用 rtrim '=' 字符。
$line = trim($line);
$line = rtrim($line,'=');
我正在尝试从 GMAIL 原始电子邮件视图中获取 HTML 模板,问题是 gmail 在每一行的末尾添加了一个 =
字符。
我使用 foreach
循环遍历行并删除“=”字符,但它仍然根本不起作用。
我还有一个if
语句来验证角色的存在。
示例 GMAIL 原始视图行:
body[dir=3Drtl] .directional_text_wrapper { direction: rtl; unicode-bid=
i: embed; }
</style>
</head>
<body lang=3D"en-us" style=3D"width:100%!important;margin:0;padding:0">
<div style=3D"padding:10px;line-height:18px;font-family:'Lucida Grand=
e',Verdana,Arial,sans-serif;font-size:12px;color:#444444">
代码:
<?php
$original_email=file("original.html");
foreach ($original_email as $line)
{
$sbstr=substr($line,-2,1);
if( $sbstr == "="){
echo $substr;
}
}
?>
更新
我试过使用 rtrim()
函数,但没有成功。
更新后的代码:
<?php
$original_email=file("original.html");
foreach ($original_email as $line)
{
/*
$sbstr=substr($line,-2,1);
if( $sbstr == "="){
echo $substr;
}
*/
rtrim($line,"=");
}
?>
您可以使用PHP函数rtrim
rtrim — Strip whitespace (or other characters) from the end of a string
使用以下语法删除行尾的=
$line = rtrim($line, "=");
使用 rtim 函数
rtrim ( $sbstr,"=")
我已经删除了每行中添加的“3D”,并制作了一个循环来剪切行尾并检查它是否等于 "="
,如果是,它使用 substr
.
<?php
$original_email=file("original.html");
foreach ($original_email as $line)
{
$line=str_replace("3D","",$line);
if($sbstr=substr($line,-2,1) == "=")
{
$ln=substr($line,0,strlen($line)-2);
echo htmlentities($ln)."<br>";
}
}
?>
首先尝试 trim 您的字符串使用 trim 来获取空格,然后使用 rtrim '=' 字符。
$line = trim($line);
$line = rtrim($line,'=');