PHP-用php怎么做触发器?

PHP-用php怎么做触发器?

甜柠檬 发布于 2017-07-14 字数 174 浏览 1128 回复 3

php怎么做触发器?是不是一定要有计划任务定时扫描?可以有实时触发的机制吗?
情况是另一个站点丢数据到我方数据库中,但不直接访问或触发我方的php,数据量时大时小.求解决方案.

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

瑾兮 2017-11-08 3 楼

PHP的定时任务可以使用以下几个函数实现。
ignore_user_abort()
set_time_limit(0)
sleep(60*10)
此代码只要运行一次后关闭浏览器即可。

ignore_user_abort();//关掉浏览器,PHP也会继续执行
set_time_limit(0);// 通过set_time_limit(0)可以让程序无限制的执行
do{
//业务逻辑代码
 sleep(60*10);// 等待5分钟后再次运行
}while(true);

如果你有对服务器操作的权限,还是建议用系统的Cron来写比较适合。

对于你后面的问题我最好还是通过直接调你写的接口比较合适,当然我不太明白你说的对方直接把数据入到你的数据库和PHP触发器有什么关系。

甜柠檬 2017-10-06 2 楼

其实你可以让对方提供一个接口,通过这个接口你们来度数据,然后存入你们的数据库,如果数据量大就分页读取。在后台写个脚本,定时执行。

清晨说ぺ晚安 2017-08-08 1 楼

你的应用场景没有说详细,如果数据库事件触发完全可以用带触发器的数据库来实现,比如MYSQL就可以.但要注意考虑性能问题,比如在从服务器上使用.

目前也有些异步I/O的网络事件库,比如libevent,已有php扩展.
也可以用系统的任务计划,或者php写个守护进程轮询.