php - websocket 服务器找不到类 mysqli。如何在我自己的 websocket 服务器中使用 mysql 数据库连接?
问题描述
我想在我自己的 websocket 服务器中使用 mysqli 数据库连接。如何在不定义 unix 套接字路径的情况下使用数据库?像这样:
$connection = new mysqli($db_servername, $db_username, $db_password, $db_name,3306,'/Applications/MAMP/tmp/mysql/mysql.sock');
webSocket 服务器运行在localhost:8080
. 我还尝试了其他一些端口和主机名,但仍然出现同样的错误:
Fatal error: Uncaught Error: Class 'mysqli' not found in D:\project\
$this->socketResource = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
socket_set_option($this->socketResource, SOL_SOCKET, SO_REUSEADDR, 1);
socket_bind($this->socketResource, 0, $this->port);
socket_listen($this->socketResource);
public function connectToDatabase(){
$db_servername = "localhost";
$db_username = "root";
$db_password = "root";
$db_name = "dbname";
// Create connection
$connection = new mysqli($db_servername, $db_username, $db_password, $db_name);
return $connection;
}
解决方案
错误是该类不存在,您没有安装 mysqli 扩展。手册
就我个人而言,我不使用 Windows,但如果我没记错的话,你应该去你的 php.ini 文件并取消注释行 extension=mysqli。(我不知道这是否是实际名称,但进行 mysqli 搜索应该可以让您到达您所在的位置。)。二进制文件通常已经安装在 Windows 上,但如果没有,您应该能够从 PHP 手册中找到可下载的文件。
推荐阅读
- javascript - 用“.”表示 app.get 静态文件 在文件名中
- api - 使用社交媒体 API 进行分析时,我可以获得哪些信息?
- c++ - 带有串行端口错误的 Mbed 以太网 Nucleo F746ZG
- javascript - 用 mousedown 创建一个正方形
- android - 更改数据时 RecyclerView.ListAdapter 崩溃
- javascript - ReactJS 尝试从动态呈现的按钮调用类方法
- selenium - 如何在 Selenium 中处理 HTML 音频元素
- c - 双指针队列、deQueue、enQueue
- devise - rails devsie_ldp 如何忽略证书验证?
- api - 如果 CORS 标头“Access-Control-Allow-Origin”为“*”且 CORS 请求未成功,则不支持凭据