Heim >Backend-Entwicklung >PHP-Tutorial >So implementieren Sie PHP zur Implementierung der Gesichtserkennung und Gesichtsanmeldung im WeChat-Miniprogramm
Dieses Mal zeige ich Ihnen, wie Sie PHP zur Implementierung der Gesichtserkennung und der Gesichtserkennungsanmeldung für WeChat Mini-Programme verwenden. Welche Vorsichtsmaßnahmen gelten für die Verwendung von PHP zur Implementierung der Gesichtserkennung und der Gesichtserkennungsanmeldung für WeChat Mini? Hier ist der eigentliche Kampf. Schauen wir uns den Fall an.
Dann schreiben wir die Face-Login-Schnittstelle im Hintergrund, um uns anzumelden. Wir müssen die durch das Fotografieren erhaltenen Fotos auf dem Server speichern
public function login(){ // 上传文件路径 $dir = "./Uploads/temp/"; if(!file_exists($dir)){ mkdir($dir,0777,true); } $upload = new \Think\Upload(); $upload->maxSize = 2048000 ;// 设置附件上传大小 $upload->exts = array('jpg', 'gif', 'png', 'jpeg');// 设置附件上传类型 $upload->savepath = ''; $upload->autoSub = false; $upload->rootPath = $dir; // 设置附件上传根目录 // 上传单个文件 $info = $upload->uploadOne($_FILES['file']); if(!$info) {// 上传错误提示错误信息 echo json_encode(array('error'=>true,'msg'=>$upload->getError()),JSON_UNESCAPED_UNICODE); }else{// 上传成功 获取上传文件信息 $file = $dir . $info['savepath'].$info['savename']; $image = base64_encode(file_get_contents($file)); $client = $this->init_face(); $options['liveness_control'] = 'NORMAL'; $options['max_user_num'] = '1'; $ret = $client->search($image,'BASE64','student',$options); // echo json_encode($ret,JSON_UNESCAPED_UNICODE); // exit; if($ret['error_code']==0){ $user = $ret['result']['user_list'][0]; $no = $user['user_id']; $score = $user['score']; if($score>=95){ $data = M('student')->where("no = '{$no}'")->find(); $data['score'] = $score; // $data['name'] = json_decode($data['name'],true); // $data['sex'] = json_decode($data['sex'],true); echo '识别成功' . json_encode($data,JSON_UNESCAPED_UNICODE); }else{ echo '识别失败' . $data['score']; } } } }
Dann entwerfen wir die Rezeption
<camera device-position="{{device?'back':'front'}}" flash="off" binderror="error" style="width: 100%; height: 300px;"></camera> <view class="weui-cellstitle" >开关</view> <view class="weui-cells weui-cells_after-title"> <view class="weui-cell weui-cell_switch"> <view class="weui-cellbd">切换摄像头</view> <view class="weui-cellft" > <switch bindtap="devicePosition" /> </view> </view> </view> <button type="primary" bindtap="takePhoto">刷脸登录</button>
Wir können auch die Vorder- und Rückseitenaufnahmen der Kamera steuern
devicePosition() { this.setData({ device: !this.data.device, }) console.log("当前相机摄像头为:", this.data.device ? "后置" : "前置"); camera() { let { ctx, type, startRecord } = this.data; }, data: { src: null, },
Aufruf der Schnittstelle in js
takePhoto() { const ctx = wx.createCameraContext() ctx.takePhoto({ quality: 'high', success: (res) => { this.setData({ src: res.tempImagePath }) console.log(res) wx.uploadFile({ url: '', //仅为示例,非真实的接口地址 filePath: this.data.src, name: 'file', formData: { }, success: function (res) { // var data = res.data // var json = JSON.parse(data) console.log(res) wx.showModal({ title: "提示", content: res.data, showCancel: false, confirmText: "确定" }) } }) } }) },
Ich glaube, dass Sie die Methode beherrschen, nachdem Sie den Fall in diesem Artikel gelesen haben Spannende Informationen, bitte beachten Sie andere verwandte Artikel auf der chinesischen PHP-Website!
Empfohlene Lektüre:
So verwenden Sie PHP, um das wiederholte Senden von Formularen zu verhindern
Anwendungsfallanalyse der CodeIgniter-Framework-Datenbank
Das obige ist der detaillierte Inhalt vonSo implementieren Sie PHP zur Implementierung der Gesichtserkennung und Gesichtsanmeldung im WeChat-Miniprogramm. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!