Avec la promotion vigoureuse des mini-programmes WeChat, de plus en plus de développeurs souhaitent ajouter des méthodes interactives intéressantes aux mini-programmes, parmi lesquelles la fonction caméra est indispensable. Dans cet article, nous présenterons comment utiliser PHP pour implémenter la fonction caméra dans l'applet WeChat.
Prérequis pour le développement
Avant de commencer le développement, nous devons disposer des technologies et des logiciels suivants :
1. Le mini programme obtient l'autorisation de l'utilisateur
Le mini programme doit obtenir l'autorisation de l'utilisateur avant de pouvoir utiliser la fonction caméra. Utilisez la méthode wx.authorize dans le mini-programme pour obtenir l'autorisation de l'utilisateur.
2. L'applet ouvre l'appareil photo et prend une photo
L'applet utilise la méthode wx.chooseImage pour ouvrir l'appareil photo de l'appareil utilisateur, et une fois la photo prise , la photo est enregistrée dans un dossier temporaire au milieu.
3. Téléchargez les photos du dossier temporaire sur le serveur
Utilisez la méthode wx.uploadFile pour télécharger les photos du dossier temporaire sur le serveur.
4. Utilisez le langage PHP pour le traitement des images
Une fois que le serveur a reçu la photo téléchargée, il utilise le langage PHP pour traiter l'image et enregistrer l'image traitée sur le serveur supérieur.
Ci-dessous, nous présenterons en détail la méthode de mise en œuvre spécifique de chaque étape.
Le mini programme obtient l'autorisation de l'utilisateur
Le mini programme doit obtenir l'autorisation de l'utilisateur pour utiliser la fonction appareil photo. Utilisez la méthode wx.authorize dans le mini-programme pour obtenir l'autorisation de l'utilisateur.
Vous pouvez d'abord définir une fonction dans le fichier app.js du mini programme :
//授权获取用户摄像头权限 function takePhoto() { wx.authorize({ scope: 'scope.camera', success: function () { console.log("授权成功"); //调用打开摄像头代码 choosePhoto(); }, fail: function () { console.log("授权失败"); } }) }
Après que l'utilisateur ait confirmé l'autorisation, appelez la fonction ChoosePhoto() pour activer le fonction caméra.
L'applet ouvre l'appareil photo et prend des photos
Après l'autorisation de l'utilisateur, nous devons utiliser la méthode wx.chooseImage dans l'applet pour ouvrir l'appareil photo de l'appareil de l'utilisateur et prenez des photos en conséquence. Ce qu'il faut noter ici, c'est que nous devons enregistrer les photos après les avoir prises dans un dossier temporaire.
Continuez à définir la fonction ChoosePhoto() dans app.js du mini programme. Cette fonction ouvrira automatiquement l'appareil photo et prendra des photos, et enregistrera les photos dans un dossier temporaire : #🎜🎜 #
// 打开照相并进行拍照 function choosePhoto() { wx.chooseImage({ count: 1, // 可以选择的图片数量 sizeType: ['original', 'compressed'], // 可以指定是原图还是压缩图 sourceType: ['album', 'camera'], // 可以指定来源是相册还是相机 success: function (res) { // 将拍照后的照片保存在本地文件夹中 var tempFilePaths = res.tempFilePaths wx.uploadFile({ url: '服务器地址', filePath: tempFilePaths, name: 'file', success: function (res) { var data = res.data; console.log(data); }, fail: function (res) { console.log(res); } }) } }) }
wx.uploadFile({ url: '服务器地址', filePath: tempFilePaths, name: 'file', success: function (res) { var data = res.data; console.log(data); }, fail: function (res) { console.log(res); } })
//下载服务器照片 $img = 'http://www.example.com/image.jpg'; $localimage = './image.jpg'; $imgcontent = file_get_contents($img); file_put_contents($localimage, $imgcontent); //使用GD库进行图片的缩放处理 $image = imagecreatefromjpeg($localimage); $x = imagesx($image); $y = imagesy($image); $xnew = 100 ;//新图片大小 $ynew = 100 ;//新图片大小 $image_p = imagecreatetruecolor($xnew, $ynew); imagecopyresampled($image_p, $image, 0,0,0,0, $xnew,$ynew,$x,$y); imagepng($image_p, $localimage);//将处理后的图片保存 imagedestroy($image_p); imagedestroy($image);
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!