我的值由换行符分隔。有时可以添加一个空值,导致2 PHP_EOL。但是某些值(只能是数字)可能以0结尾(例如4950)。
我正在使用此代码:
foreach($myVar as $key => $value) {
while(substr($value, -1, 1) == PHP_EOL) {
$value = substr($value, -1, 1);
}
}
但是似乎PHP_EOL == 0,切断了我值的最后一个“ 0”(例如4950-> 495)。
尝试使用此代码找出答案:
if(PHP_EOL == 0) {
echo "CONV0<br>";
}
if(PHP_EOL == 1) {
echo "CONV1<br>";
}
在不中断0的情况下删除每个PHP_EOL的好方法是什么?为什么PHP_EOL == 0?真奇怪!
答案 0 :(得分:1)
在不中断0的情况下删除每个PHP_EOL的好方法是什么?
$value = rtrim($value, PHP_EOL);
关于PHP_EOL
等于0
的原因,请参见PHP type juggling, "String" == 0 and "String" == true。