php
后端开发-PHP问题
微盘网站源码,ubuntu有qq嘛,tomcat 显示运行状态,爬虫 it桔子,PHP绑定域名加密sn,seo 股票lzw
本文操作环境:windows7系统、PHP7.1版、DELL G3电脑秒赞网源码asp,u盘升级ubuntu,mc动画彩虹爬虫,dubbo调用php,东圃seolzw
php怎么实现播放声音?PHP好卡购系统源码,ubuntu用vim编程,tomcat8设置内存,定向爬虫蜘蛛,php跳转页面的方法,seo开lzw
PHP利用H5 audio实现类似美团订单声音提示,网页播放音乐效果大家经常会做站内信,消息提醒的功能,那么如何在此基础上加上提示音呢?分享一下整个功能实现过程。
首先我们需要布局好消息提示样式,这里大家可根据自己需求布局。
消息提示铃铛样式.jpg
做好消息提示的样式之后,我们就需要开始做定时器以及异步查询数据了。
$(function () { var set = setInterval(function(){ $.post("{:url('prompt')}", '', function(data){if (data.status){ $('#num').html(data.num); //将消息数量添加上去 var audio = new Audio("./song.ogg"); //获取本地音频文件,ogg,mp3都可以 audio.play(); //执行播放操作} }, 'json'); }, 1000); //点击查看小心,并且将消息数量清空 $('#a_link').click(function () { $('#num').html(''); }) })
这里我们利用H5的audio(),去实现播放提示音。我这里的代码写的很粗糙,大家可以根据自己需求优化下。
下面我们利用PHP语言去读取数据库中时候有新消息,如果有就开始推送,没有则忽略。我这里是基于TP5.1
public function prompt(){ //这里插叙是否有新订单,如果有就提示,没有则忽略 $num = Db::name('hexiao')->where('add_time', '>' , date('Y-m-d H:i:s', time()-10))->count(); if ($num > 0){ return json(['status' => 1, 'num' => $num]); } else { return json(['status' => 0, 'num' => $num]); }}
下面介绍下H5的audio标签,目前支持MP3、Ogg、Wav
执行效果
执行效果.jpg
也可以控制播放和暂停以及重播
播放/暂停重播
也可以通过js去控制音频播放和暂停
function repeat(){ var audio = document.getElementById('music'); audio.currentTime = 0;//重新播放 } function control(){ var audio = document.getElementById('music'); if(audio!==null){ if(audio.paused){audio.play();// 播放 }else{audio.pause();// 暂停 } } }