PHP ltrim() 函数遇到困难

PHP ltrim() function is giving a hard time

我在 php 中使用了 ltrim() 函数到 trim 来自“:newname”的“:new”,但它也是 trimming "n" 的名称并返回 "ame"。

这是代码:

<?php
echo ltrim(":newname",":new"); 
?> 

哪个returns

ame

有什么我可以做的吗?或上述特定任务的任何其他功能?

我已经尝试过使用“:newName”而不是“:newname”,但我不能每次都这样做 trim 只有“:new”和“:new”之后的字符串可能会有所不同,所以不能将下一个字母大写。

问题是第二个参数是 documenation 中所述的字符掩码 - 这意味着它去除了该字符串中定义的所有字符。

作为一个简单的解决方法,您可以使用 preg_replace:

<?php
$str = preg_replace('/^:new/', '', ':newname');
echo $str; // prints name
?>