Rumah >pembangunan bahagian belakang >tutorial php >Apakah operasi Express.js biasa dalam pengaturcaraan PHP?

Apakah operasi Express.js biasa dalam pengaturcaraan PHP?

WBOY
WBOYasal
2023-06-12 10:45:09889semak imbas

Apakah operasi Express.js dalam pengaturcaraan PHP?

Bahasa pengaturcaraan PHP ialah salah satu bahasa pembangunan web yang paling popular hari ini. Dalam PHP, terdapat banyak rangka kerja dan perpustakaan popular yang boleh digunakan untuk memudahkan pengaturcaraan dan mempercepatkan proses pembangunan. Salah satu rangka kerja yang popular ialah Express.js, iaitu rangka kerja aplikasi web berasaskan Node.js. Fleksibiliti dan skalabiliti menjadikannya pilihan yang baik untuk digunakan dalam pengaturcaraan PHP. Dalam artikel ini, kami akan memperkenalkan operasi Express.js biasa dalam pengaturcaraan PHP.

  1. Buat pelayan web

Menggunakan PHP dan Express.js, anda boleh membuat pelayan web dengan mudah. Anda perlu memasang Node.js dan Express.js, dan mencipta fail pelayan dengan kod berikut:

const express = require('express');
const app = express();

app.get('/', function(req, res) {
   res.send('Hello World');
});

app.listen(3000, function() {
   console.log('Server started on port 3000');
});

Dalam contoh di atas, kami telah mencipta pelayan web mudah menggunakan Express.js, yang Mendengar pada port 3000 dan menyediakan perkhidmatan HTTP pada port tersebut. Kami juga mentakrifkan laluan GET yang akan mengembalikan "Hello World" sebagai respons.

  1. Mengendalikan data borang

Apabila menulis aplikasi web, adalah perkara biasa untuk memproses data borang. Express.js mengendalikan permintaan POST dan mengekstrak data borang dengan baik. Berikut ialah contoh pengendalian permintaan POST:

app.post('/process-form', function(req, res) {
   const name = req.body.name;
   const email = req.body.email;
   const password = req.body.password;

   // Process the form data here...
});

Dalam kod di atas, kami telah menentukan laluan POST yang mengendalikan borang bernama "process-form". Apabila borang diserahkan, Express.js akan menghuraikan isi permintaan dan menjadikannya tersedia sebagai objek req.body. Kami boleh mengekstrak data borang daripada objek ini dan memprosesnya.

  1. Mengendalikan penghalaan

Mengendalikan penghalaan adalah sangat penting semasa menulis aplikasi web. Anda boleh menggunakan Express.js untuk menentukan dan mengendalikan laluan. Berikut ialah beberapa contoh pengendalian laluan:

// Simple GET route
app.get('/about', function(req, res) {
   res.send('About us');
});

// Dynamic route
app.get('/user/:id', function(req, res) {
   const id = req.params.id;
   res.send(`User ID: ${id}`);
});

// Route with middleware
app.get('/protected', isAuthenticated, function(req, res) {
   res.send('Protected page');
});

// 404 page
app.use(function(req, res, next) {
   res.status(404).send('Page not found');
});

Dalam contoh di atas, kami telah menentukan jenis laluan yang berbeza. Yang pertama ialah laluan GET mudah yang hanya mengembalikan rentetan. Yang kedua ialah laluan dinamik yang mengekstrak parameter daripada URL dan mengeluarkannya. Yang ketiga ialah laluan yang memerlukan pengesahan, yang menggunakan middleware untuk menyemak sama ada pengguna sudah log masuk. Yang terakhir ialah halaman 404 yang akan berfungsi sebagai laluan lalai jika tiada laluan ditemui.

  1. Menggunakan enjin templat

Dalam pengaturcaraan PHP, adalah perkara biasa untuk menggunakan enjin templat untuk mencipta kandungan dinamik. Express.js membolehkan anda menggunakan enjin templat yang berbeza untuk mencipta kandungan dinamik. Berikut ialah contoh penggunaan enjin templat EJS:

// Set EJS as the view engine
app.set('view engine', 'ejs');

// Render a template
app.get('/post/:id', function(req, res) {
   const id = req.params.id;
   const title = 'My Blog Post';

   res.render('post', { id: id, title: title });
});

Dalam kod di atas, kami mula-mula menyediakan EJS sebagai enjin paparan. Kami kemudiannya menentukan laluan GET yang akan memaparkan kandungan menggunakan templat post.ejs. Apabila memaparkan templat, kami menggunakan objek JavaScript sebagai parameter yang mengandungi pembolehubah yang diekstrak daripada laluan. Dalam templat, anda boleh menggunakan pembolehubah ini untuk mencipta kandungan dinamik.

  1. Menggunakan middleware

Middleware sangat penting dalam Express.js. Anda boleh menggunakannya untuk menambah fungsi, mengendalikan permintaan, mengesahkan pengguna dan menentukan pengendali ralat. Berikut ialah contoh penggunaan middleware:

// Logger middleware
app.use(function(req, res, next) {
   console.log(`${req.method} ${req.url}`);
   next();
});

// Authentication middleware
function isAuthenticated(req, res, next) {
   if (req.isAuthenticated()) {
      return next();
   }

   res.redirect('/login');
}

// Error handling middleware
app.use(function(err, req, res, next) {
   console.error(err.stack);
   res.status(500).send('Internal Server Error');
});

Dalam kod di atas, kami telah mentakrifkan tiga middleware yang berbeza. Yang pertama ialah pembalak mudah yang mencetak kaedah dan URL yang diminta. Yang kedua ialah perisian tengah pengesahan yang menyemak sama ada pengguna sudah log masuk. Yang ketiga ialah perisian tengah pengendalian ralat, yang mencetak ralat apabila ralat berlaku dan mengembalikan respons Ralat Pelayan Dalaman 500.

Ringkasan

Dalam artikel ini, kami memperkenalkan beberapa operasi Express.js biasa dalam pengaturcaraan PHP. Menggunakan operasi ini, anda boleh membuat pelayan web dengan mudah, memproses data borang, mengendalikan penghalaan, menggunakan enjin templat dan menggunakan perisian tengah. Operasi ini menjadikan pengaturcaraan dengan PHP dan Express.js lebih mudah dan lebih fleksibel. Sama ada anda seorang pemula atau pembangun PHP yang berpengalaman, menguasai operasi ini sangat berguna.

Atas ialah kandungan terperinci Apakah operasi Express.js biasa dalam pengaturcaraan PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn