gpt4 book ai didi

C# String.Format() 在 PHP 中等效?

转载 作者:IT王子 更新时间:2023-10-29 00:52:39 25 4
gpt4 key购买 nike

我正在构建一个相当大的 Lucene.NET 搜索表达式。有没有最佳实践方法可以在 PHP 中进行字符串替换?它不一定是这种方式,但我希望有类似于 C# String.Format 方法的东西。

这是 C# 中的逻辑。

var filter = "content:{0} title:{0}^4.0 path.title:{0}^4.0 description:{0} ...";

filter = String.Format(filter, "Cheese");

是否有 PHP5 等价物?

最佳答案

您可以使用 sprintf function :

$filter = "content:%1$s title:%1$s^4.0 path.title:%1$s^4.0 description:%1$s ...";
$filter = sprintf($filter, "Cheese");

或者您编写自己的函数,用相应的参数替换 {i}:

function format() {
$args = func_get_args();
if (count($args) == 0) {
return;
}
if (count($args) == 1) {
return $args[0];
}
$str = array_shift($args);
$str = preg_replace_callback('/\\{(0|[1-9]\\d*)\\}/', create_function('$match', '$args = '.var_export($args, true).'; return isset($args[$match[1]]) ? $args[$match[1]] : $match[0];'), $str);
return $str;
}

关于C# String.Format() 在 PHP 中等效?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1241177/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com