gpt4 book ai didi

PHP变量返回2个不同的值?

转载 作者:行者123 更新时间:2023-11-29 13:54:57 24 4
gpt4 key购买 nike

我希望 $userhp1 打印到屏幕,并保存到分配的 SQL 表。这工作正常,但它们都返回不同的结果。有没有办法让它们返回相同的值?

ob_start();
vitality(); //runs vitality function
$uservit = ob_get_contents(); // stores result on $uservit
ob_end_clean();
echo "-Vitality:";
echo "$uservit<br />";// Prints vitality
$userhp1 = $uservit * 2.8; // multiplys vitality too create HP
$userhp2 = $userhp1;

echo "-HP From vit:";
echo "$userhp2"; // prints hp

$con=mysqli_connect("localhost", "***", "***", "***");
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}

mysqli_query($con,"UPDATE users SET hp=$userhp2
WHERE id='1'");
mysqli_close($con);

最佳答案

您的代码中有两处错误:

ob_start();
vitality();
$uservit = ob_get_contents();

这里您似乎使用 ob_* 函数系列从函数返回值。 ob_get_contents 将返回一个字符串,您似乎对此不太满意,因为您将其用作整数:

$userhp1 = $uservit * 2.8;

您只需从函数中返回值即可。输出缓冲用于其他用途。

其次,您声明 $userhp2 = $userhp1;,然后您既不修改 $userhp1 也不修改 $userhp2。为什么不直接使用 $userhp1 而不是 $userhp2 并且从不首先设置后者?

附注:mysql_* 函数正在被删除,并且已被弃用。使用PDOmysqli相反。

关于PHP变量返回2个不同的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16015711/

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