[英]trim() leaves a single trailing and leading space
php 7.4
我相信 php 的修剪出現故障。 它會刪除重復的尾隨和前導空格,但會留下一個尾隨和前導空格。
function string_to_safe_list($str){
$list = explode(",", $str);
array_map(function($x){
return trim(strtolower(htmlspecialchars($x)));
}, $list);
var_dump($str);
var_dump($list);
return $list;
}
$str = "test,test, test, test , test, test";
=> string_to_safe_list($str) = {"test", "test", " test", " test ", " test", " test"}
$str
是一個“逗號分隔值”數組。
我怎樣才能讓trim()
正常運行,從而讓$list
變成{"test", "test", "test", "test", "test", "test"}
,而無需手動檢查和更正第一個$list
中每個字符串的最后一個字符?
然而,刪除每個空白實例是不可接受的,因為有效的$str
可能是"test entry, test entry, test, test"
,它應該變成{"test entry", "test entry", "test", "test"}
您必須將 array_map 的結果分配給一個變量。
function string_to_safe_list($str){
$list = explode(",", $str);
$list = array_map(function($x){
return trim(strtolower(htmlspecialchars($x)));
}, $list);
return $list;
}
$str = "test,test, test, test , test, test";
var_dump(string_to_safe_list($str));
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.