我想知道我是否可以将回声输出到变量中。我的意思是echo接受多个参数,所以我可以使用echo输出类似的东西:
echo 'Welcome ', $name, ', we are here to help!';
我发现它比连接字符串更清晰,更容易维护,我无法忍受复杂的语法。 是否有可能使echo只返回一个值?所以我可以做类似
的事情$string_not_meant_for_being_displayed = echo('Lorem', $ipsum);
或者,是否可以创建一个带有无数个参数的函数?
性能实际上不是问题。
答案 0 :(得分:3)
是的,可以创建一个带有无数个参数的函数。您只需使用func_num_args()
来获取所提供的参数数量。
function abcd(){
$numargs = func_num_args();
echo "Number of arguments: $numargs\n";
}
abcd(1,2,3,4,5,6);
答案 1 :(得分:1)
为什么要将echo存储到变量中?
要使用多个参数,请使用双引号语法:
echo“欢迎$ firstname,$ lastname。我们随时为您提供帮助!”;
答案 2 :(得分:1)
我对你的问题有点困惑,但我对它的理解有点混淆,
在函数内部,而不是使用echo,请使用return。
示例你有一个函数,
function myFunction()
{
$name = "Leonardo";
return $name;
}
在这种情况下,您可以将返回的值用作变量。所以$ name变量现在的值为“Leonardo”;
答案 3 :(得分:1)
用户sprintf
,vsprintf
,printf
代替
http://php.net/manual/en/function.sprintf.php
答案 4 :(得分:1)
如果您必须使用echo,我相信您希望使用输出缓冲:ob_start和ob_get_flush。
示例:强>
ob_start();
echo "This is a test";
$string_not_meant_to_be_displayed = ob_get_flush();
答案 5 :(得分:1)
这样的事情有什么问题......
$name='Goober';
$thing="Welcome $name, we are here to help!";
echo $thing;
echo "\n";
答案 6 :(得分:1)
这个怎么样?
<?php
function extended_echo($text, $values) {
$count = 1;
foreach ($values as $values) {
$text = preg_replace("#@" . $count . "@#", $values, $text);
$count++;
}
return $text;
}
$myValues = array();
$myValues[0] = 'TechNew.In';
$myValues[2] = 'tech';
$myValues[3] = 'dino babu';
$myText = "Hello, @1@ is an awesome @2@ website by @3@.";
echo extended_echo($myText, $myValues);
?>
输出
Hello, TechNew.In is an awesome tech website by dino babu.
答案 7 :(得分:0)
我能够解决创建另一个函数的问题,如下所示:
function ee(){
foreach(func_get_args() as $arg) {
$v .= $arg;
}
return $v;
}
$name = "John";
echo ee("Welcome ", $name, ", we are here to help");
$string_not_meant_to_be_displayed = ee("His name is ", $name);
这样我可以像echo一样使用多个参数,但如果需要,可以将其输出到其他地方。