Pembaca kode qr php open source

Ya memang, saya menggunakan Rogue Master 0. 63. 2-0728-RM-T. Intinya, saya membuat file yang berisi sinyal suara monoton yang dibuat oleh ggwave. Namun, secara default ggwave menulis file WAV 16-bit, dan memainkan ini tidak didukung (disebutkan dalam kode) dan menghasilkan keluaran yang cukup kacau. Tapi saya mendapatkan output

Jika Anda ingin menggunakan framework PHP Laravel untuk membangun barcode web dan pembaca kode QR, Anda dapat mengimplementasikan logika kode baik di sisi klien atau di sisi server. Dynamsoft menyediakan berbagai SDK untuk berbagai platform. desktop, seluler, dan web. Pada artikel ini, kami fokus pada cara memanfaatkan ekstensi PHP yang dibuat dengan Dynamsoft C++ Barcode SDK untuk membaca kode batang dan kode QR di sisi server. Jika pemrograman sisi klien web adalah tipe Anda, silakan merujuk ke https. // www. dynamsoft. com/barcode-reader/sdk-javascript/

Instalasi PHP Laravel di Windows dan Linux

Instal PHP7. 4, Komposer dan Laravel

  • PHP 7. 4
    • Windows

      php-7. 4. 30-nts-Win32-vc15-x64. zip

    • Linux

        sudo apt install php7.4
      

  • Komposer
    • Windows Jalankan Composer-Setup. exe
    • Linux

        php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
        php -r "if (hash_file('sha384', 'composer-setup.php') === '55ce33d7678c5a611085589f1f3ddf8b3c52d662cd01d4ba75c0ee0459970c2200a51f492d557530c71c15d8dba01eae') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
        php composer-setup.php
        php -r "unlink('composer-setup.php');"
        sudo mv composer.phar /usr/local/bin/composer
      
      _

  • Laravel

      composer global require laravel/installer
    

Langkah-Langkah Implementasi Pembacaan Kode QR Server Side Barcode Menggunakan PHP Laravel

Dalam paragraf berikut, kami akan memandu Anda melalui proses pengembangan proyek PHP Laravel yang dapat membaca kode batang dan kode QR dari file gambar di sisi server

Langkah 1. Instal Ekstensi Pembaca Kode QR Barcode PHP

Tidak ada paket biner pra-bangun. Untuk membaca kode batang dan kode QR di PHP, Anda perlu membuat dan memasang ekstensi PHP dari kode sumber di Windows dan Linux

Langkah 2. Perancah Proyek Laravel

Setelah ekstensi diinstal, Anda dapat memulai proyek Laravel baru

composer create-project laravel/laravel web-barcode-qrcode-reader

Perintah di atas menginstal Laravel versi stabil terbaru. Untuk menghindari masalah kompatibilitas, cara yang lebih baik adalah menentukan nomor versi Laravel

php artisan --version
Laravel Framework 8.83.23

composer create-project laravel/laravel:^8.0 web-barcode-qrcode-reader
_

Langkah 3. Buat Pengontrol

Pengontrol Laravel menangani permintaan HTTP. Kami dapat membuat pengontrol untuk menangani file gambar yang diunggah dan mengembalikan hasil decoding kode batang dan kode QR

php artisan make:controller ImageUploadController

Perintah menghasilkan file

  php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
  php -r "if (hash_file('sha384', 'composer-setup.php') === '55ce33d7678c5a611085589f1f3ddf8b3c52d662cd01d4ba75c0ee0459970c2200a51f492d557530c71c15d8dba01eae') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
  php composer-setup.php
  php -r "unlink('composer-setup.php');"
  sudo mv composer.phar /usr/local/bin/composer
_1 di direktori
  php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
  php -r "if (hash_file('sha384', 'composer-setup.php') === '55ce33d7678c5a611085589f1f3ddf8b3c52d662cd01d4ba75c0ee0459970c2200a51f492d557530c71c15d8dba01eae') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
  php composer-setup.php
  php -r "unlink('composer-setup.php');"
  sudo mv composer.phar /usr/local/bin/composer
2. Buka file untuk menambahkan kode berikut

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use Validator;

class ImageUploadController extends Controller
{
    function __construct() {
        DBRInitLicense("DLS2eyJoYW5kc2hha2VDb2RlIjoiMjAwMDAxLTE2NDk4Mjk3OTI2MzUiLCJvcmdhbml6YXRpb25JRCI6IjIwMDAwMSIsInNlc3Npb25QYXNzd29yZCI6IndTcGR6Vm05WDJrcEQ5YUoifQ==");
        DBRInitRuntimeSettingsWithString("{\"ImageParameter\":{\"Name\":\"BestCoverage\",\"DeblurLevel\":9,\"ExpectedBarcodesCount\":512,\"ScaleDownThreshold\":100000,\"LocalizationModes\":[{\"Mode\":\"LM_CONNECTED_BLOCKS\"},{\"Mode\":\"LM_SCAN_DIRECTLY\"},{\"Mode\":\"LM_STATISTICS\"},{\"Mode\":\"LM_LINES\"},{\"Mode\":\"LM_STATISTICS_MARKS\"}],\"GrayscaleTransformationModes\":[{\"Mode\":\"GTM_ORIGINAL\"},{\"Mode\":\"GTM_INVERTED\"}]}}");		
    }

    function page()
    {
     return view('barcode_qr_reader');
    }

    function upload(Request $request)
    {
     $validation = Validator::make($request->all(), [
      'BarcodeQrImage' => 'required'
     ]);
     if($validation->passes())
     {
      $image = $request->file('BarcodeQrImage');
      $image->move(public_path('images'), $image->getClientOriginalName());

      $resultArray = DecodeBarcodeFile(public_path('images/' . $image->getClientOriginalName()), 0x3FF | 0x2000000 | 0x4000000 | 0x8000000 | 0x10000000); // 1D, PDF417, QRCODE, DataMatrix, Aztec Code

      if (is_array($resultArray)) {
        $resultCount = count($resultArray);
        echo "Total count: $resultCount", "\n";
        if ($resultCount > 0) {
            for ($i = 0; $i < $resultCount; $i++) {
                $result = $resultArray[$i];
                echo "Barcode format: $result[0], ";
                echo "value: $result[1], ";
                echo "raw: ", bin2hex($result[2]), "\n";
                echo "Localization : ", $result[3], "\n";
            }
        }
        else {
            echo 'No barcode found.', "\n";
        }
      } 

      return response()->json([
       'message'   => 'Successfully uploaded the image.'
      ]);
     }
     else
     {
      return response()->json([
       'message'   => $validation->errors()->all()
      ]);
     }
    }
}
_

Dalam metode

  php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
  php -r "if (hash_file('sha384', 'composer-setup.php') === '55ce33d7678c5a611085589f1f3ddf8b3c52d662cd01d4ba75c0ee0459970c2200a51f492d557530c71c15d8dba01eae') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
  php composer-setup.php
  php -r "unlink('composer-setup.php');"
  sudo mv composer.phar /usr/local/bin/composer
3, Anda menginisialisasi instance SDK kode batang dengan menyetel kunci lisensi yang valid, yang dapat diperoleh dari portal pelanggan Dynamsoft. Memanggil
  php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
  php -r "if (hash_file('sha384', 'composer-setup.php') === '55ce33d7678c5a611085589f1f3ddf8b3c52d662cd01d4ba75c0ee0459970c2200a51f492d557530c71c15d8dba01eae') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
  php composer-setup.php
  php -r "unlink('composer-setup.php');"
  sudo mv composer.phar /usr/local/bin/composer
_4 adalah opsional, karena pengaturan default cocok untuk sebagian besar kasus

Gambar yang diunggah disimpan ke direktori

  php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
  php -r "if (hash_file('sha384', 'composer-setup.php') === '55ce33d7678c5a611085589f1f3ddf8b3c52d662cd01d4ba75c0ee0459970c2200a51f492d557530c71c15d8dba01eae') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
  php composer-setup.php
  php -r "unlink('composer-setup.php');"
  sudo mv composer.phar /usr/local/bin/composer
5. Metode
  php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
  php -r "if (hash_file('sha384', 'composer-setup.php') === '55ce33d7678c5a611085589f1f3ddf8b3c52d662cd01d4ba75c0ee0459970c2200a51f492d557530c71c15d8dba01eae') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
  php composer-setup.php
  php -r "unlink('composer-setup.php');"
  sudo mv composer.phar /usr/local/bin/composer
6 digunakan untuk membaca barcode dan kode QR dari file gambar

Langkah selanjutnya adalah membuat tampilan

  php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
  php -r "if (hash_file('sha384', 'composer-setup.php') === '55ce33d7678c5a611085589f1f3ddf8b3c52d662cd01d4ba75c0ee0459970c2200a51f492d557530c71c15d8dba01eae') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
  php composer-setup.php
  php -r "unlink('composer-setup.php');"
  sudo mv composer.phar /usr/local/bin/composer
_7

Langkah 4. Buat Tampilan Web

Buat file

  php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
  php -r "if (hash_file('sha384', 'composer-setup.php') === '55ce33d7678c5a611085589f1f3ddf8b3c52d662cd01d4ba75c0ee0459970c2200a51f492d557530c71c15d8dba01eae') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
  php composer-setup.php
  php -r "unlink('composer-setup.php');"
  sudo mv composer.phar /usr/local/bin/composer
_8 di direktori
  php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
  php -r "if (hash_file('sha384', 'composer-setup.php') === '55ce33d7678c5a611085589f1f3ddf8b3c52d662cd01d4ba75c0ee0459970c2200a51f492d557530c71c15d8dba01eae') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
  php composer-setup.php
  php -r "unlink('composer-setup.php');"
  sudo mv composer.phar /usr/local/bin/composer
9. File tersebut berisi kode HTML5 untuk mengunggah gambar melalui formulir

<!DOCTYPE html>
<html>

<head>
    <title>PHP Laravel Barcode QR Reader</title>
    <meta name="_token" content="" />
</head>

<body>
    <H1>PHP Laravel Barcode QR Reader</H1>
    <form action="" method="post" enctype="multipart/form-data">
    @csrf
        Select barcode image:
        <input type="file" name="BarcodeQrImage" id="BarcodeQrImage" accept="image/*"><br>
        <input type="submit" value="Read Barcode" name="submit">
    </form>
    <img id="image" />
    <script>
        var input = document.querySelector('input[type=file]');
        input.onchange = function() {
            var file = input.files[0];
            var fileReader = new FileReader();
            fileReader.onload = function(e) {
                {
                    let image = document.getElementById('image');
                    image.src = e.target.result;
                }
            }
            fileReader.readAsDataURL(file);
        }
    </script>
</body>

</html>

Perlindungan CSRF diperlukan untuk formulir. Cara yang mudah adalah dengan menggunakan arahan Blade

  composer global require laravel/installer
_0 untuk menghasilkan bidang input token tersembunyi

Bagaimana cara membaca kode QR menggunakan PHP?

Langkah-Langkah Implementasi Pembacaan Kode QR Barcode Sisi Server Menggunakan PHP Laravel .
Langkah 1. Instal Ekstensi Pembaca Kode QR Barcode PHP. Tidak ada paket biner pra-bangun. .
Langkah 2. Perancah Proyek Laravel. .
Langkah 3. Buat Pengontrol. .
Langkah 4. Buat Tampilan Web. .
Langkah 5. Jalankan Pembaca Kode QR Barcode PHP Laravel

Bagaimana cara membuat pembaca kode QR di PHP?

Mari membuat kode QR dalam PHP .
Instal dependensi. .
Tulis kodenya. .
Uji apakah kode berfungsi. .
Buat kode QR dengan logo. .
Kode ini memperluas kelas QROptions dasar, memungkinkannya mengatur lebar dan tinggi di sekitar gambar yang dihamparkan pada kode QR. .
Perbarui kode. .
Tambahkan file gambar

Apakah ada pembaca kode QR gratis?

Sebagian besar aplikasi pemindai Kode QR ini gratis. Dan aplikasi pembaca Kode QR gratis terbaik meliputi Pemindai Kode QR Kaspersky, pemindai Kode QR Neo Reader, dan aplikasi pemindai Kode Batang QR yang tersedia di Android dan iOS .

Bagaimana cara memindai kode QR menggunakan webcam di PHP?

Anda dapat menggunakan plugin webcam jquery ini dan kemudian mengirim gambar ke php-zbarcode . Ini menggunakan zbar yang dapat membaca kode qr. Perhatikan bahwa plugin membutuhkan flash. Ada juga jsqrcode yang dapat Anda gunakan untuk memindai dan menginterpretasikan Kode QR, namun ini membutuhkan HTML5 untuk menampilkan output webcam, dan flash untuk menangkap.