每次我学习有关php的新知识时,我都不得不重写代码(例如,mysql连接无法在会话中作为句柄传递的事实),我感到很烦。
如何在项目中实现mysql连接?很多人提出了“连接池”,但是在阅读了手册之后,我仍然迷路了。就像:“连接池是mysql_pconnect!”
-我:“和…?实际上有什么不同?您可以在会话中传递mysql_pconnect吗?为什么这看似神秘的光环?”
让我解释一下我的情况。我有一个名为“ query1”的函数:
function query1($query)
{
$db = new mysql(HOST,USER,PASS,DBNAME);
$result = $db->query($query);
$db->close();
return $result;
}
这似乎是查询数据库的一种浪费和低效的方式( 尤其是 因为您需要像mysql_real_escape_string这样的函数使用mysql句柄)。
什么是正确的表格? 有人可以帮帮我吗?
谢谢,我将非常感谢您提供诚实的好答案。
通常,一旦页面加载就会发生连接。又名
class Database{
public function connect()
{
$this->connection = mysql_connect();
}
// This will be called at the end of the script.
public function __destruct()
{
mysql_close($this->connection);
}
public function function query($query)
{
return mysql_query($query, $this->connection);
}
}
$database = new Database;
$database->connect();
$database->query("INSERT INTO TABLE (`Name`) VALUES('Chacha')");
基本上,您在页面的开头打开连接,在页面的结尾将其关闭。然后,您可以在页面期间进行各种查询,而不必对连接做任何事情。
您甚至可以按照Erik的建议在构造函数中执行mysql_connect。
要使用全局变量(不建议使用,因为它会创建全局状态),请执行以下操作
Global $db;
$db = new Database;
// ... do startup stuff
function doSomething()
{
Global $db;
$db->query("Do Something");
}
哦,没有人提到您不必传递参数。只需连接
mysql_connect();
然后,无论作用域是什么,mysql_query将只使用最后一个连接。
mysql_connect();
function doSomething()
{
mysql_query("Do something");
}
根据评论:
我认为您应该使用mysql_pconnect()而不是mysql_connect(),因为mysql_connect()不使用连接池。–夜间编码器
您可能要考虑使用mysql_connect
还是mysql_pconnect
。但是,每个脚本仍应仅连接一次。
当连接到rabbitmq队列服务器失败时,我正在尝试实现重新连接机制。此代码仅用于消费消息,下面是我的代码(channel Init函数负责初始化消费者并绑定到队列)。 连接失败时,我成功收到提示“[AMQP] 重新连接”,但在该队列未重新连接后,控制台日志中没有其他提示。 请帮忙。
我尝试为我的数据创建带有“转换”的插件到kafka-connect,并将其与不同的接收器连接器一起使用。当我安装插件时,kafka-connect看不到我的类。 我使用kafka connect maven插件创建了我的捆绑包zip。使用confluent hub(来自本地文件)的安装已成功。 所有文件都已解压,我的工作者属性已更新插件。路径。我在分布式模式下运行connect,并尝试从包中创建带
我正在使用kafka 2.0,kafka connect在分布式模式下运行,并尝试配置debezium mysql连接器,但得到错误 电话是这样的:
问题内容: 因此,我正在尝试获取本地网络中本机的IP地址(应该是)。 我的初衷是使用这样的东西: 但它只会返回,这是正确的,但对我却没有太大帮助。 我四处搜索并找到了这个答案http://codingdict.com/questions/121424,它仅创建了到某些网页的- connection(例如“ google.com”),并从套接字获取了本地主机地址: 这确实适用于我的机器(返回),但需
首先,它已经工作了4个月,但现在当我需要写报告时,它停止了。 我上传了一个最低限度的例子给大家看看问题所在: 该文件包含三个本体,第一个本体.ttl有一个类和一个实例,第二个本体.ttl有一个类,第三个本体将它们连接在一起,并将第一个本体的类作为第二个本体的子类。在这个连接的本体中,我看不到使用ontograf的first.ttl中的实例
a 应该在内部使用类似于: 如何一个