Fetch the repository succeeded.
Customizing the timeout for a database query
composer.json
{
"require": {
"wwaayyaa/mysql-timeout": "dev-master"
}
}
$ composer install
php code
$conf = Conf::$db1;
print_r($conf);
$d = new MysqlTimeout($conf);
echo "now:".time()."\n";
$r = $d->query('select sleep(2) as `sleep`,2 as `sec`;');
print_r($r);
echo "sleep 2s,now:".time()."\n";
try{
$r = $d->query('select sleep(5) as `sleep`,5 as `sec`;',3);
}catch(Exception $e){
echo sprintf("error message:%s ,error code : %d \n",$e->getMessage(),$e->getCode());
}
echo "sleep 5s but timeout is 3s,so throw a error.now:".time()."\n";
$d = new MysqlTimeout($conf);//must new a MysqlTimeout. because
$r = $d->query('select sleep(5) as `sleep`,5 as `sec`;',6);
print_r($r);
echo "sleep 5s success,because timeout is 6s. now:".time()."\n";
//Other methods
$r = $d->update("update dtk_zhibo_chat_log set addtime=now() where id = 6 or id = 17;");
echo sprintf("success rows:%d \n",$r);
$r = $d->insert("insert into dtk_zhibo_chat_log (zhiboId,content) values (1292,'test');");
echo sprintf("primary id:%d \n",$r);
result
Array
(
[host] => 127.0.0.1
[port] => 3306
[user] => root
[password] => root
[dbname] => test
[charset] => utf8
)
now:1475056910
Array
(
[0] => Array
(
[sleep] => 0
[sec] => 2
)
)
sleep 2s,now:1475056912
error message:timeout ,error code : 922922
sleep 5s but timeout is 3s,so throw a error.now:1475056915
Array
(
[0] => Array
(
[sleep] => 0
[sec] => 5
)
)
sleep 5s success,because timeout is 6s. now:1475056920
success rows:2
primary id:1036
/**
* @return mixed query data
*/
public function query($sql, $timeout = 3);
/**
* @return int rows count
*/
public function update($sql, $timeout = 3);
/**
* @return int data primary id
*/
public function insert($sql, $timeout = 3);
/**
* @return int rows count
*/
public function delete($sql, $timeout = 3);
3
)0.05
seconds,max_execution_time
and MySQL timeout settings
.If the query timeout, MysqlTimeout will throw an exception, the exception number
922922
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。
1. Open source ecosystem
2. Collaboration, People, Software
3. Evaluation model