对象无法在 MySQLi PHP 中转换为字符串

2023-03-05php开发问题
3

本文介绍了对象无法在 MySQLi PHP 中转换为字符串的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

问题描述

可捕获的致命错误:第 20 行 C:xampphtdocsxxxdash.php 中的类 mysqli_result 的对象无法转换为字符串

Catchable fatal error: Object of class mysqli_result could not be converted to string in C:xampphtdocsxxxdash.php on line 20

我是一个相当新的人,作为一个老派的编码员,只是使用 mysql_result 来获取这些数据,我不知道如何去做.我有一个类-> 功能设置.

I am quite fairly new, and being a old-school coder, simply using mysql_result to grab such data, I am unaware of how to go about this. I have a class->function setup.

dash.php 的第 20 行包含:

Line 20 of dash.php contains:

echo $user->GetVar('rank', 'Liam', $mysqli);

虽然,功能是:

function GetVar($var, $username, $mysqli)
    {
        $result = $mysqli->query("SELECT " . $var . " FROM users WHERE username = '" . $username . "' LIMIT 1");
        return $result;
        $result->close();
    }

现在,据我所知,我打算将 $result 转换为字符串,但我不完全了解如何执行此操作.我尝试了几种方法,但都无济于事.所以我来到社区希望得到答案,我也环顾四周,但注意到所有其他线程都要求 num_rows,而我只想从查询选择中获取字符串.

Now, to my understanding, I am meant to convert $result into a string, but I am not fully aware of how to do so. I've tried using a few methods, but to no avail. So I've come to the community to hopefully get a answer, I've also looked around but noticed that all other threads are asking for num_rows, while I just want to grab the string from the query select.

推荐答案

在回显结果之前,您必须先获取它.粗略示例:

You have to fetch it first before echoing the results. Rough Example:

function GetVar($var, $username, $mysqli) {
    // make the query
    $query = $mysqli->query("SELECT ".$var." FROM users WHERE username = '".$username."' LIMIT 1");
    $result = $query->fetch_assoc(); // fetch it first
    return $result[$var];
}

然后使用你的函数:

echo $user->GetVar('rank', 'Liam', $mysqli);

重要提示:既然你刚开始,请检查准备好的语句.不要直接在您的查询中附加用户输入.

Important Note: Since you're starting out, kindly check about prepared statements. Don't directly append user input on your query.

这篇关于对象无法在 MySQLi PHP 中转换为字符串的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

The End

相关推荐

PHP实现DeepL翻译API调用
DeepL的翻译效果还是很强大的,如果我们要用php实现DeepL翻译调用,该怎么办呢?以下是代码示例,希望能够帮到需要的朋友。 在这里需要注意,这个DeepL的账户和api申请比较难,不支持中国大陆申请,需要拥有香港或者海外信用卡才行,没账号的话,目前某宝可以...
2025-08-20 php开发问题
168

PHP通过phpspreadsheet导入Excel日期数据处理方法
PHP通过phpspreadsheet导入Excel日期,导入系统后,全部变为了4开头的几位数字,这是为什么呢?原因很简单,将Excel的时间设置问文本,我们就能看到该日期本来的数值,上图对应的数值为: 要怎么解决呢?进行数据转换就行,这里可以封装方法,或者用第三方的...
2024-10-23 php开发问题
287

mediatemple - 无法使用 codeigniter 发送电子邮件
mediatemple - can#39;t send email using codeigniter(mediatemple - 无法使用 codeigniter 发送电子邮件)...
2024-08-23 php开发问题
11

Laravel Gmail 配置错误
Laravel Gmail Configuration Error(Laravel Gmail 配置错误)...
2024-08-23 php开发问题
16

将 PHPMailer 用于 SMTP 的问题
Problem with using PHPMailer for SMTP(将 PHPMailer 用于 SMTP 的问题)...
2024-08-23 php开发问题
4

关于如何在 GoDaddy 服务器中使用 PHPMailer 设置 SMTP 的问题
Issue on how to setup SMTP using PHPMailer in GoDaddy server(关于如何在 GoDaddy 服务器中使用 PHPMailer 设置 SMTP 的问题)...
2024-08-23 php开发问题
17