PHP trim()在未指定时删除S.

vav*_*uta 1 php

使用PHP 7.2.8

关于trim()PHP中的函数我有一个奇怪的情况.举个例子,让我说这个陈述:

echo trim("sacas",",\s");
Run Code Online (Sandbox Code Playgroud)

我明白了

aca
Run Code Online (Sandbox Code Playgroud)

结果是.此外,如果我拨打一个略有不同的电话:

echo trim("  sacas",",\s")
Run Code Online (Sandbox Code Playgroud)

我明白了

  saca
Run Code Online (Sandbox Code Playgroud)

(如果很难看到,领先的空间仍然存在).

作为最好的,我可以告诉大家,什么是发生的是trim,它去除了匹配一组指定的所有前导和尾随字符,则删除所有s字符,忽略空格.但是/s应该表示空白字符,而根本不匹配s.

任何想法为什么会这样?如果是这样,我怎样才能在留下字符的同时删除空白s

作为一个说明,我的问题需要我修剪两个逗号和空格出来,所以我不能只是简单地使用TRIM(),没有额外的参数,它不会离开s独自

Vic*_*tor 5

您必须指定要删除的所有字符(即,不能使用正则表达式).因此,要修剪空格和逗号,您需要:

echo trim("  sacas", ", \t\n\r\0\x0B");
Run Code Online (Sandbox Code Playgroud)