gpt4 book ai didi

php - 如何使用 PHP 将对象转换为字符串

转载 作者:行者123 更新时间:2023-11-30 22:55:23 24 4
gpt4 key购买 nike

我正在使用 PHP 和 MySQL 创建一个网络应用程序。

<button type="button" class="btn btn-primary btn-lg btn-block" id="buttony">All</button>
<button type="button" class="btn btn-default" id="buttony1">Strength</button>
<button type="button" class="btn btn-default" id="buttony2">Agility</button>
<?php echo "<a href='heroes/" . get_intelligence_hero($name) . ".html'" . "<button type='button' class='btn btn-default' id='buttony3'>Intelligence</button>"; ?>

它使用 PHP 从数据库中接收随机行,然后当你点击它时,它会将你带到该行自己的 html 页面(这是一个名为 DOTA2 的游戏。你点击英雄的属性,它会随机选择一个英雄给你,并把它带到网页上)。

function get_intelligence_hero($name){
global $con;
$result = mysqli_query($con, "SELECT name FROM heroes WHERE attribute = 'intelligence' ORDER BY RAND() LIMIT 1");
if(!$result) {
die(mysqli_error($con));
}
$hero = serialize((mysqli_fetch_object($result)));

echo $hero;
}

如果他是基于 Intelligence 属性,这是我检索该英雄的函数。我使用序列化来查看它是否会转换为字符串。但是它给了我这个结果:

O:8:"stdClass":1:{s:4:"name";s:6:"Dazzle";}

所以它确实将行转换为字符串并检索了英雄。我怎样才能得到行?例如,如何从它返回的所有文本中提取“Dazzle”?

最佳答案

只需获取您需要的色谱柱:

...
$hero_object = mysqli_fetch_object($result);
$hero_name = $hero_object->name;

return $hero_name;

请注意,您应该在数据库调用中添加错误处理,以捕获空记录集等情况。

另请注意,如果您要在 url 和 html 输出中使用该变量,您应该正确地转义它。例如在你的函数中返回一个你可以在你的 url 中使用的值:

return urlencode($hero_name);

在这种情况下,您不需要 htmlspecialchars(),因为当您使用 urlencode() 时,html 中的所有特殊字符都不会保持未编码状态。

关于php - 如何使用 PHP 将对象转换为字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26619314/

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