


PHP dalam Tindakan: Contoh dan aplikasi dunia nyata
Apr 14, 2025 am 12:19 AMPHP digunakan secara meluas dalam e-dagang, sistem pengurusan kandungan dan pembangunan API. 1) e-dagang: Untuk fungsi keranjang belanja dan pemprosesan pembayaran. 2) Sistem Pengurusan Kandungan: Digunakan untuk penjanaan kandungan dinamik dan pengurusan pengguna. 3) Pembangunan API: Digunakan untuk Pembangunan API RESTful dan Keselamatan API. Melalui pengoptimuman prestasi dan amalan terbaik, kecekapan dan pemeliharaan aplikasi PHP bertambah baik.
Pengenalan
Pernahkah anda ingin tahu tentang senario aplikasi PHP dalam realiti? PHP bukan sahaja bahasa pengaturcaraan pilihan untuk pemula, tetapi juga teknologi teras banyak laman web dan aplikasi besar. Hari ini, kami akan meneroka penerapan PHP dalam projek sebenar secara mendalam, dari Basic to Advanced, dan membawa anda untuk menghargai daya tarikan PHP. Melalui artikel ini, anda akan mempelajari bagaimana PHP dapat memamerkan kemahirannya dalam e-dagang, sistem pengurusan kandungan, pembangunan API dan bidang lain, dan menguasai beberapa kemahiran praktikal dan amalan terbaik.
Kajian asas PHP
PHP, preprocessor hiperteks nama penuh, adalah bahasa pengaturcaraan yang digunakan secara meluas dalam bahasa skrip sisi pelayan. Ia boleh tertanam dalam HTML dan sangat sesuai untuk pembangunan web. Sintaks PHP adalah mudah, mudah dipelajari dan digunakan, yang menjadikannya pilihan pertama bagi banyak pemaju.
Dalam PHP, anda boleh dengan mudah memproses data borang, menguruskan pangkalan data, menjana laman web dinamik, dan lain -lain. Mari kita semak penggunaan asas PHP dengan contoh mudah:
<? Php $ name = "John"; Echo "Hello,". $ nama. "!"; ?>
Kod ini menunjukkan cara mengisytiharkan pembolehubah dan rentetan output menggunakan echo
. Mudah dan berkesan, bukan?
Permohonan PHP dalam e-dagang
E-dagang adalah kawasan di mana PHP menunjukkan kekuatannya. Banyak platform e-dagang yang terkenal, seperti Magento dan Shopify, dibangunkan berdasarkan PHP. Mari kita lihat aplikasi khusus PHP dalam e-dagang.
Fungsi keranjang belanja
Keranjang belanja adalah salah satu fungsi utama laman web e-dagang. PHP dengan mudah boleh memproses data keranjang belanja pengguna, dan melaksanakan operasi seperti menambah, memadam, dan mengemas kini produk. Berikut adalah pelaksanaan keranjang belanja mudah:
<? Php session_start (); jika (! Isset ($ _ session ['cart'])) { $ _Session ['cart'] = array (); } jika (isset ($ _ post ['add_to_cart'])) { $ product_id = $ _post ['product_id']; $ kuantiti = $ _post ['Quantity']; jika (isset ($ _ sesi ['cart'] [$ product_id])) { $ _Session ['cart'] [$ product_id] = $ kuantiti; } else { $ _Session ['cart'] [$ product_id] = $ kuantiti; } } // tunjukkan kandungan cart foreach ($ _Session ['cart'] sebagai $ product_id => $ Quantity) { echo "ID Produk: $ Product_ID, Kuantiti: $ kuantiti <br>"; } ?>
Contoh ini menunjukkan cara menggunakan sesi untuk menguruskan data keranjang belanja. Dengan cara ini, pengguna boleh menyimpan kereta di negeri mereka di antara halaman yang berbeza.
Pemprosesan pembayaran
Pemprosesan pembayaran adalah satu lagi ciri utama laman web e-dagang. PHP boleh diintegrasikan dengan pelbagai gerbang pembayaran, seperti paypal, jalur, dan lain -lain. Berikut adalah contoh pemprosesan pembayaran PayPal yang mudah:
<? Php memerlukan 'vendor/autoload.php'; $ apiContext = new \ paypal \ rest \ ApiContext ( New \ PayPal \ auth \ oauthtokencredential ( 'Your_client_id', // clientId 'Your_client_secret' // clientsecret ) ); $ pembayar = new \ payPal \ Api \ payer (); $ pembayar-> setPaymentMethod ('PayPal'); $ amaun = new \ paypal \ api \ amaun (); $ jumlah-> settotal ('10 .00 ') -> setCurrency ('usd'); $ transaksi = new \ paypal \ api \ transaksi (); $ transaksi-> setAmount ($ amaun); $ redirecturls = new \ payPal \ api \ redirecturls (); $ redirecturls-> setReturnUrl ("http://example.com/return") -> setCanceLurl ("http://example.com/cancel"); $ pembayaran = new \ paypal \ api \ payment (); $ Pembayaran-> SetIntent ('Jualan') -> SetPayer ($ pembayar) -> setTtransactions (array ($ urus niaga)) -> setRedirecturls ($ redirecturls); Cuba { $ pembayaran-> create ($ ApiContext); echo $ pembayaran-> getApprovAlkin (); } tangkapan (\ paypal \ exception \ paypalconnectionException $ ex) { echo $ ex-> getMessage (); } ?>
Contoh ini menunjukkan cara menggunakan API REST PayPal untuk memproses pembayaran. Dengan cara ini, anda boleh mengintegrasikan ciri pembayaran dengan mudah ke laman web e-dagang anda.
Aplikasi PHP dalam Sistem Pengurusan Kandungan
Sistem Pengurusan Kandungan (CMS) adalah satu lagi bidang di mana PHP bersinar. CMS yang terkenal seperti WordPress, Drupal dan Joomla semuanya dibangunkan berdasarkan PHP. Mari kita lihat aplikasi khusus PHP dalam CMS.
Penjanaan kandungan dinamik
Fungsi teras CMS adalah untuk menjana kandungan secara dinamik. PHP dengan mudah boleh membaca data dari pangkalan data dan menghasilkan laman web dinamik. Berikut adalah contoh mudah penjanaan kandungan dinamik:
<? Php $ serverName = "localhost"; $ username = "Nama Pengguna"; $ password = "kata laluan"; $ dbName = "mydb"; // Buat sambungan $ conn = mysqli baru ($ ServerName, $ username, $ kata laluan, $ dbName); // Periksa sambungan jika ($ conn-> connect_error) { mati ("Sambungan gagal:". $ conn-> connect_error); } $ sql = "pilih ID, tajuk, kandungan dari jawatan"; $ result = $ conn-> query ($ sql); jika ($ hasil-> num_rows> 0) { // data output semasa ($ row = $ result-> fetch_assoc ()) { echo "<h2>". $ row ["tajuk"]. "</h2>"; echo "<p>". $ row ["kandungan"]. "</p>"; } } else { echo "0 hasil"; } $ conn-> close (); ?>
Contoh ini menunjukkan cara membaca data artikel dari pangkalan data dan menghasilkan kandungan web secara dinamik. Dengan cara ini, anda boleh mengurus dan membentangkan sejumlah besar kandungan.
Pengurusan Pengguna
Pengurusan pengguna adalah satu lagi ciri penting CMS. PHP dengan mudah boleh mengendalikan pendaftaran pengguna, log masuk, pengurusan kebenaran dan operasi lain. Berikut adalah contoh pendaftaran pengguna yang mudah:
<? Php $ serverName = "localhost"; $ username = "Nama Pengguna"; $ password = "kata laluan"; $ dbName = "mydb"; // Buat sambungan $ conn = mysqli baru ($ ServerName, $ username, $ kata laluan, $ dbName); // Periksa sambungan jika ($ conn-> connect_error) { mati ("Sambungan gagal:". $ conn-> connect_error); } jika ($ _server ["request_method"] == "pos") { $ username = $ _post ['username']; $ password = $ _post ['password']; $ sql = "Masukkan ke dalam pengguna (nama pengguna, kata laluan) nilai ('$ username', '$ password')"; jika ($ conn-> query ($ sql) === true) { echo "penyisipan rekod baru berjaya"; } else { Echo "Ralat:". $ SQL. "<br>". $ conn-> ralat; } } $ conn-> close (); ?>
Contoh ini menunjukkan cara mengendalikan pendaftaran pengguna dan menyimpan data pengguna ke dalam pangkalan data. Dengan cara ini, anda boleh menguruskan maklumat pengguna dengan mudah.
Permohonan PHP dalam Pembangunan API
Pembangunan API merupakan bahagian penting dalam pembangunan web moden. PHP dengan mudah boleh membangunkan API yang tenang untuk memenuhi pelbagai keperluan aplikasi. Mari kita lihat aplikasi khusus PHP dalam pembangunan API.
Pembangunan API yang tenang
API RESTFUL adalah gaya reka bentuk API biasa. PHP boleh menggunakan pelbagai kerangka dan perpustakaan untuk membangunkan API yang tenang. Berikut adalah contoh API RESTful yang mudah menggunakan kerangka Slim:
<? Php Gunakan \ psr \ http \ message \ ServerRequestInterface sebagai permintaan; Gunakan \ psr \ http \ message \ ResponseInterface sebagai respons; memerlukan 'vendor/autoload.php'; $ app = new \ slim \ app; $ app-> get ('/hello/{name}', fungsi (permintaan $ permintaan, respons $ respons, array $ args) { $ name = $ args ['name']; $ respons-> getBody ()-> tulis ("hello, $ name"); mengembalikan $ respons; }); $ app-> run (); ?>
Contoh ini menunjukkan bagaimana untuk membangunkan API RESTful yang mudah menggunakan kerangka Slim. Dengan cara ini, anda boleh dengan mudah mengendalikan pelbagai permintaan HTTP dan mengembalikan data yang sepadan.
Keselamatan API
Keselamatan API merupakan aspek penting dalam pembangunan API. PHP boleh menggunakan pelbagai kaedah untuk memastikan keselamatan API, seperti pengesahan, penyulitan, dan lain -lain. Berikut adalah contoh pengesahan API yang mudah:
<? Php Gunakan \ psr \ http \ message \ ServerRequestInterface sebagai permintaan; Gunakan \ psr \ http \ message \ ResponseInterface sebagai respons; memerlukan 'vendor/autoload.php'; $ app = new \ slim \ app; $ app-> tambah (baru \ slim \ middleware \ jwtauthentication ([[ "jalan" => "/api", // jalan untuk mengesahkan "rahsia" => "supersecretkeyyoushouldnotcommittogithub", "Algoritma" => ["HS256"], "ralat" => fungsi ($ permintaan, $ respons, $ argumen) { kembali $ respons-> withjson ($ argumen ["mesej"], 401); } ])); $ app-> get ('/api/hello', fungsi (permintaan $ permintaan, respons $ respons, array $ args) { $ Response-> getBody ()-> tulis ("Hello, api!"); mengembalikan $ respons; }); $ app-> run (); ?>
Contoh ini menunjukkan cara menggunakan JWT (JSON Web Token) untuk melaksanakan pengesahan API. Dengan cara ini, anda boleh memastikan bahawa hanya pengguna yang diberi kuasa boleh mengakses API anda.
Pengoptimuman prestasi dan amalan terbaik
Pengoptimuman prestasi dan amalan terbaik adalah penting dalam aplikasi praktikal. Mari lihat bagaimana untuk melakukan pengoptimuman prestasi dan ikuti amalan terbaik dalam projek PHP.
Pengoptimuman Prestasi
Pengoptimuman prestasi dapat meningkatkan kelajuan tindak balas dan pengalaman pengguna aplikasi PHP. Berikut adalah beberapa petua pengoptimuman prestasi biasa:
- Caching : Menggunakan cache dapat mengurangkan bilangan pertanyaan pangkalan data dan bacaan fail, dengan itu meningkatkan prestasi. Berikut adalah contoh caching fail mudah:
<? Php $ CACHEFILE = 'CACHE/DATA.JSON'; $ Cachetime = 3600; // masa cache, detik unit jika (file_exists ($ Cachefile) && (fileMtime ($ Cachefile)> (time () - $ Cachetime))) { $ data = json_decode (file_get_contents ($ cachefile), true); } else { // Dapatkan data dari pangkalan data atau sumber lain $ data = array ('kunci' => 'nilai'); file_put_contents ($ cachefile, json_encode ($ data))); } echo $ data ['key']; ?>
Contoh ini menunjukkan cara menggunakan caching fail untuk meningkatkan prestasi. Dengan cara ini, anda boleh mengurangkan akses kerap ke pangkalan data, dengan itu meningkatkan kelajuan tindak balas aplikasi anda.
- Pengoptimuman pangkalan data : Mengoptimumkan pertanyaan dan indeks pangkalan data dapat meningkatkan prestasi dengan ketara. Berikut adalah contoh pengoptimuman pangkalan data yang mudah:
<? Php $ serverName = "localhost"; $ username = "Nama Pengguna"; $ password = "kata laluan"; $ dbName = "mydb"; // Buat sambungan $ conn = mysqli baru ($ ServerName, $ username, $ kata laluan, $ dbName); // Periksa sambungan jika ($ conn-> connect_error) { mati ("Sambungan gagal:". $ conn-> connect_error); } // pertanyaan $ sql = "Buat indeks idx_title pada siaran (tajuk)" Menggunakan pengoptimuman indeks; $ conn-> query ($ sql); // pertanyaan yang dioptimumkan $ sql = "pilih id, tajuk dari jawatan di mana tajuk seperti '%kata kunci%' had 10"; $ result = $ conn-> query ($ sql); jika ($ hasil-> num_rows> 0) { // data output semasa ($ row = $ result-> fetch_assoc ()) { echo "<h2>". $ row ["tajuk"]. "</h2>"; } } else { echo "0 hasil"; } $ conn-> close (); ?>
Contoh ini menunjukkan bagaimana untuk meningkatkan prestasi pangkalan data dengan membuat indeks dan mengoptimumkan pertanyaan. Dengan cara ini, anda boleh mengurangkan masa pertanyaan dengan ketara, dengan itu meningkatkan kelajuan tindak balas aplikasi anda.
Amalan terbaik
Berikutan amalan terbaik dapat meningkatkan kebolehbacaan, kebolehkerjaan, dan skalabilitas kod anda. Berikut adalah beberapa amalan terbaik PHP yang biasa:
- Gaya Kod : Mengikuti gaya kod yang konsisten dapat meningkatkan kebolehbacaan kod. Berikut adalah contoh gaya kod mudah:
<? Php // Gunakan fungsi nomenclature unta CalculateToTalPrice ($ harga, $ kuantiti) { pulangan $ harga * $ kuantiti; } // Gunakan nama pemboleh ubah yang bermakna $ totalPrice = calculateTotalPrice (10.99, 2); echo "Jumlah harga: $". $ totalprice; ?>
Contoh ini menunjukkan cara menggunakan nomenclature unta dan nama pemboleh ubah yang bermakna untuk meningkatkan kebolehbacaan kod anda. Dengan cara ini, anda boleh membuat kod anda lebih mudah difahami dan diselenggarakan.
- Pengendalian ralat : Pengendalian ralat yang baik dapat meningkatkan keteguhan permohonan. Berikut adalah contoh pengendalian ralat yang mudah:
<? Php Fungsi Bahagikan ($ A, $ B) { jika ($ b == 0) { membuang pengecualian baru ("pembahagi tidak boleh menjadi sifar"); } kembali $ a / $ b; } Cuba { $ hasil = membahagikan (10, 0); Echo "Hasil:". $ hasil; } menangkap (pengecualian $ e) { Echo "Ralat:". $ e-> getMessage (); } ?>
Contoh ini menunjukkan cara menggunakan pengendalian pengecualian untuk mengendalikan kesilapan. Dengan cara ini, anda boleh membuat aplikasi anda lebih mantap dan lebih baik mengendalikan pelbagai pengecualian.
Meringkaskan
Melalui artikel ini, kami mempunyai perbincangan mendalam mengenai aplikasi praktikal PHP dalam bidang seperti e-dagang, sistem pengurusan kandungan dan pembangunan API. Dari fungsi keranjang belanja ke pemprosesan pembayaran, dari penjanaan kandungan dinamik ke pengurusan pengguna, dari pembangunan API yang tenang hingga keselamatan API, kami menunjukkan kuasa dan fleksibiliti PHP.
Pengoptimuman prestasi dan amalan terbaik adalah penting dalam aplikasi praktikal. Kami memperkenalkan beberapa petua pengoptimuman prestasi biasa seperti cache dan pengoptimuman pangkalan data, dan berkongsi beberapa amalan terbaik PHP seperti gaya kod dan pengendalian ralat.
Saya berharap melalui artikel ini, anda dapat lebih memahami senario aplikasi PHP dalam kehidupan sebenar dan menguasai beberapa teknik praktikal dan amalan terbaik. Sama ada anda seorang pemula atau pemaju yang berpengalaman, PHP boleh memberi anda alat yang berkuasa dan kemungkinan tanpa had.
Atas ialah kandungan terperinci PHP dalam Tindakan: Contoh dan aplikasi dunia nyata. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undress AI Tool
Gambar buka pakaian secara percuma

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Ageneratorinphpisamemory-efficientwaytoiterateOverlargedatasetsbyieldingvaluesonateatimeNsteadofreturningthemallatonce.1.GeneratorSuseTheyEldeyWorderWorderToProducevaluuesondemand,

Dalam PHP, anda boleh menggunakan kurungan persegi atau pendakap keriting untuk mendapatkan aksara indeks spesifik rentetan, tetapi kurungan persegi disyorkan; Indeks bermula dari 0, dan akses di luar julat mengembalikan nilai null dan tidak dapat diberikan nilai; MB_SUBSTR dikehendaki mengendalikan watak multi-bait. Sebagai contoh: $ str = "hello"; echo $ str [0]; output h; dan watak -watak Cina seperti MB_SUBSTR ($ str, 1,1) perlu mendapatkan hasil yang betul; Dalam aplikasi sebenar, panjang rentetan perlu diperiksa sebelum gelung, rentetan dinamik perlu disahkan untuk kesahihan, dan projek berbilang bahasa mengesyorkan menggunakan fungsi keselamatan multi-bait secara seragam.

Untuk mengelakkan rampasan sesi dalam PHP, langkah -langkah berikut perlu diambil: 1. Gunakan HTTPS untuk menyulitkan penghantaran dan set session.cookie_secure = 1 dalam php.ini; 2. Tetapkan atribut kuki keselamatan, termasuk httponly, selamat dan samesite; 3. Panggil session_regenerate_id (benar) apabila pengguna log masuk atau keizinan berubah menjadi berubah menjadi SesiSeId; 4. Hadkan kitaran hayat sesi, konfigurasi GC_MAXLIFETIME dan rekod masa aktiviti pengguna; 5. melarang mendedahkan sessionId ke url, dan tetapkan session.use_only

Fungsi urlencode () digunakan untuk menyandikan rentetan ke dalam format selamat URL, di mana aksara bukan alphanumerik (kecuali-, _, dan.) Digantikan dengan tanda peratus diikuti oleh nombor heksadesimal dua angka. Sebagai contoh, ruang ditukar kepada tanda-tanda, tanda seru ditukar kepada!, Dan watak-watak Cina ditukar kepada borang pengekodan UTF-8 mereka. Apabila menggunakan, hanya nilai parameter yang perlu dikodkan, bukan keseluruhan URL, untuk mengelakkan merosakkan struktur URL. Untuk bahagian lain URL, seperti segmen laluan, fungsi Rawurlencode () harus digunakan, yang menukarkan ruang ke. Apabila memproses parameter array, anda boleh menggunakan http_build_query () untuk mengodkan secara automatik, atau memanggil urlencode secara manual () pada setiap nilai untuk memastikan pemindahan data yang selamat. Hanya

Anda boleh menggunakan substr () atau mb_substr () untuk mendapatkan aksara n pertama dalam php. Langkah -langkah khusus adalah seperti berikut: 1. Gunakan substr ($ string, 0, n) untuk memintas aksara N yang pertama, yang sesuai untuk aksara ASCII dan mudah dan cekap; 2. Apabila memproses aksara multi-bait (seperti Cina), MB_SUBSTR ($ String, 0, N, 'UTF-8'), dan memastikan bahawa lanjutan MBSTRING diaktifkan; 3. Jika rentetan mengandungi aksara HTML atau Whitespace, anda harus terlebih dahulu menggunakan strip_tags () untuk mengeluarkan tag dan trim () untuk membersihkan ruang, dan kemudian memintasnya untuk memastikan hasilnya bersih.

Terdapat dua cara utama untuk mendapatkan aksara N terakhir rentetan dalam PHP: 1. Gunakan fungsi substr () untuk memintas melalui kedudukan permulaan negatif, yang sesuai untuk aksara tunggal-bait; 2. Gunakan fungsi MB_SUBSTR () untuk menyokong pengekodan berbilang bahasa dan UTF-8 untuk mengelakkan pemotongan aksara bukan bahasa Inggeris; 3. Secara pilihan menentukan sama ada panjang rentetan cukup untuk mengendalikan situasi sempadan; 4. Ia tidak disyorkan untuk menggunakan kaedah kombinasi STRREV () Substr () kerana ia tidak selamat dan tidak cekap untuk aksara multi-bait.

Untuk menetapkan dan mendapatkan pembolehubah sesi dalam PHP, anda mesti terlebih dahulu memanggil session_start () di bahagian atas skrip untuk memulakan sesi. 1. Apabila menetapkan pembolehubah sesi, gunakan $ _Session hyperglobal array untuk memberikan nilai kepada kekunci tertentu, seperti $ _Session ['username'] = 'john_doe'; Ia boleh menyimpan rentetan, nombor, tatasusunan dan juga objek, tetapi elakkan menyimpan terlalu banyak data untuk mengelakkan mempengaruhi prestasi. 2. Apabila mendapatkan pembolehubah sesi, anda perlu menghubungi session_start () terlebih dahulu, dan kemudian mengakses array $ _Session melalui kunci, seperti echo $ _Session ['username']; disyorkan untuk menggunakan isset () untuk memeriksa sama ada pembolehubah wujud untuk mengelakkan kesilapan

Kaedah utama untuk mencegah suntikan SQL dalam PHP termasuk: 1. Gunakan pernyataan pra -proses (seperti PDO atau MySQLI) untuk memisahkan kod dan data SQL; 2. Matikan mod preprocessing simulasi untuk memastikan pra -proses yang benar; 3. Penapis dan sahkan input pengguna, seperti menggunakan is_numeric () dan filter_var (); 4. Elakkan secara langsung splicing rentetan SQL dan gunakan parameter mengikat sebaliknya; 5. Matikan paparan ralat dalam persekitaran pengeluaran dan log ralat rekod. Langkah -langkah ini secara komprehensif menghalang risiko suntikan SQL dari mekanisme dan butiran.
