php调试不要被浏览器蒙蔽了眼睛

2 篇文章 0 订阅

昨日社区一哥们q我,让我解决一个 请高手解决php正则替换 帖子

要求是:把字符串 abcdefghi中的 a c gh 前后用 <>起来,结果用该是 <a>b<c>def<gh>i,这样的。必须用preg_replace。

 

php使用手册中对preg_replace的举例有5个,其中前两个都可以用不同的方式实现此结果:

 

Example #1 逆向引用后面紧接着数字的用法

     echo preg_replace("/(f|c|gh)/i", "</${1}>", "abcdefghi");

Example #2 在 preg_replace() 中使用索引数组

    echo preg_replace(array("/a/", "/c/", "/gh/"), array("<a>","<c>","<gh>"), "abcdefghi"

 

我从语法上没找到错误,但是浏览器一直输出:bdefi。让我一直怀疑自己正则用的有问题。经过无数次测试,并参考大家的回复,我确定自己没有错误。然后查看源代码发现,其实我的输出是正确的。豁然开朗,只是浏览器把<a>这类的字符串隐去了。

 

多谢一个哥们echo preg_replace("/a|c|gh/", "<$0>", "abcdefghi");的提醒

 

用浏览器显示调试结果,源代码才是最正确的,不要被表象蒙蔽了眼睛!

要在Cordova应用程序中捕获实时视频并添加蒙版,您可以使用以下步骤: 1. 安装cordova-plugin-media-capture插件,以便您可以从应用程序中调用设备摄像头: ``` cordova plugin add cordova-plugin-media-capture ``` 2. 创建一个Cordova页面,该页面包含一个视频元素和一个蒙版元素,蒙版元素应该在视频元素上方。以下是一个简单的示例: ``` <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Cordova Real-Time Masking Example</title> <style> #video { position: absolute; top: 0; left: 0; width: 100%; height: 100%; } #mask { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.5); display: none; } </style> </head> <body> <video id="video" autoplay></video> <div id="mask"></div> <script src="cordova.js"></script> <script> document.addEventListener('deviceready', function() { var video = document.getElementById('video'); var mask = document.getElementById('mask'); var constraints = { audio: false, video: true }; navigator.mediaDevices.getUserMedia(constraints) .then(function(stream) { video.srcObject = stream; video.onloadedmetadata = function(e) { video.play(); }; }) .catch(function(err) { console.log(err.name + ": " + err.message); }); video.addEventListener('play', function() { var canvas = document.createElement('canvas'); canvas.width = video.videoWidth; canvas.height = video.videoHeight; var ctx = canvas.getContext('2d'); setInterval(function() { ctx.drawImage(video, 0, 0, canvas.width, canvas.height); ctx.fillStyle = 'rgba(0, 0, 0, 0.5)'; ctx.fillRect(0, 0, canvas.width, canvas.height); mask.style.display = 'block'; mask.style.backgroundImage = 'url(' + canvas.toDataURL() + ')'; }, 100); }, false); }, false); </script> </body> </html> ``` 3. 这段代码会在页面加载时请求用户许可使用摄像头,并在蒙版元素上方显示视频流。代码使用setInterval()函数每隔100毫秒来更新蒙版元素,使其显示当前捕获的视频帧,并添加一个半透明的黑色蒙版。您可以根据需要修改蒙版的颜色和透明度。 希望这可以帮助您实现您的需求。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值