在计算操作之前在 php 中显示 "text" 时出错
Error displaying "text" in php before calculating the operation
我想在打印计算输出之前打印一段文本,而不将文本存储在变量中。我怎样才能做到这一点?
这是我的代码:
$x = 5;
$y = 10.5;
echo "add: 5+6 =" . $x + $y;
此代码计算加法 $x + $y,然后转换为字符串,然后连接为字符串 "add: 5+6="(参见 https://www.php.net/manual/en/function.strval.php)
$x = 5;
$y = 10.5;
echo "add: 5+6 = ". strval($x + $y);
关于您的代码
参见 https://www.php.net/manual/en/language.operators.precedence.php:串联运算符的优先级高于算术运算符。
您的原始代码与:
相同
$x = 5;
$y = 10.5;
echo (int)("add: 5+6 =" . $x) + $y;
这意味着:首先,连接字符串 "add: 5+6 =" 。 $x
add 5+6 =5
然后转换为 int (即 return 0)
(int)("add: 5+6 =5")
然后添加 $y
0 + 10.5
然后回显它
echo 10.5;
所以这就是为什么你的代码 return 10.5
你可以试试这个。
<?php
$x = 5;
$y = 10.5;
$z = $x + $y;
echo "add: 5+6 = " . $z;
?>
<?php
$x = 5;
$y = 10.5;
printf("add: 5+6 = %f", $x + $y);
?>
<?php
$x = 5;
$y = 10.5;
echo "add: 5+6 =" . ($x + $y); // automatic converts to `string`
试试这个:
$x = 5;
$y = 10.5;
$z=$x+$y;
echo "add:5+6 =".$z;
你可以通过连接一个变量来做到这一点
<?php
$x = 5;
$y =10.5;
$z=$x+$y;
echo "add: ".$x."+".$y." = ". $z;
?>
输出
add: 5+10.5 = 15.5
我想在打印计算输出之前打印一段文本,而不将文本存储在变量中。我怎样才能做到这一点?
这是我的代码:
$x = 5;
$y = 10.5;
echo "add: 5+6 =" . $x + $y;
此代码计算加法 $x + $y,然后转换为字符串,然后连接为字符串 "add: 5+6="(参见 https://www.php.net/manual/en/function.strval.php)
$x = 5;
$y = 10.5;
echo "add: 5+6 = ". strval($x + $y);
关于您的代码
参见 https://www.php.net/manual/en/language.operators.precedence.php:串联运算符的优先级高于算术运算符。
您的原始代码与:
相同$x = 5;
$y = 10.5;
echo (int)("add: 5+6 =" . $x) + $y;
这意味着:首先,连接字符串 "add: 5+6 =" 。 $x
add 5+6 =5
然后转换为 int (即 return 0)
(int)("add: 5+6 =5")
然后添加 $y
0 + 10.5
然后回显它
echo 10.5;
所以这就是为什么你的代码 return 10.5
你可以试试这个。
<?php
$x = 5;
$y = 10.5;
$z = $x + $y;
echo "add: 5+6 = " . $z;
?>
<?php
$x = 5;
$y = 10.5;
printf("add: 5+6 = %f", $x + $y);
?>
<?php
$x = 5;
$y = 10.5;
echo "add: 5+6 =" . ($x + $y); // automatic converts to `string`
试试这个:
$x = 5;
$y = 10.5;
$z=$x+$y;
echo "add:5+6 =".$z;
你可以通过连接一个变量来做到这一点
<?php
$x = 5;
$y =10.5;
$z=$x+$y;
echo "add: ".$x."+".$y." = ". $z;
?>
输出
add: 5+10.5 = 15.5