亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

Jadual Kandungan
Berhati-hati dengan mendedahkan terlalu banyak maklumat mengenai persediaan back-end anda, terutamanya jika anda menggunakan rangka kerja yang diketahui. Ini boleh mendedahkan permohonan anda kepada serangan yang berpotensi jika kelemahan keselamatan dalam rangka kerja itu ditemui. Juga, ingatlah untuk menghapuskan konfigurasi pembangunan apabila menolak pengeluaran untuk mengelakkan akses yang tidak dibenarkan.
2. Tidak menggunakan PDO
3. Tidak menulis semula URL
5. Menetapkan dalam keadaan
7. Tidak mengeluarkan konfigurasi pembangunan
Kesimpulan
Rumah pembangunan bahagian belakang tutorial php 7 Lebih banyak kesilapan yang biasanya dibuat oleh pemaju PHP

7 Lebih banyak kesilapan yang biasanya dibuat oleh pemaju PHP

Feb 20, 2025 am 10:25 AM

3

Kembali pada akhir bulan Jun, Toptal, pasaran bebas, menerbitkan jawatan kira -kira 10 kesilapan yang paling biasa PHP pengaturcara. Senarai itu tidak lengkap, tetapi ia ditulis dengan baik dan menunjukkan beberapa perangkap yang sangat menarik yang perlu diperhatikan - walaupun saya tidak akan menyenaraikan kesilapan secara peribadi. 7 More Mistakes Commonly Made by PHP Developers Saya menggalakkan anda untuk memberikan bacaan menyeluruh - ia mempunyai beberapa maklumat yang benar -benar berharga yang harus anda ketahui - terutama lapan mata pertama. Beberapa hari yang lalu, Anna Filina berkembang dalam senarai dengan tujuh penyertaan baru. Walaupun kurang spesifik dan biasa, mata beliau masih membawa berat badan dan harus dipertimbangkan ketika berkembang.

Takeaways Key 7 Lebih banyak kesilapan yang biasanya dibuat oleh pemaju PHP

Elakkan menggunakan lanjutan MySQL yang tidak disengajakan untuk pangkalan data SQL, kerana ia tidak selamat, tidak boleh dipercayai, dan tidak mempunyai sokongan untuk SSL dan ciri MySQL moden. Sebaliknya, pilih alternatif seperti Mysqli atau PDO, yang menawarkan keselamatan yang lebih baik dan lebih banyak ciri.

Elakkan menindas kesilapan dalam kod anda dengan menggunakan pengendali @. Sebaliknya, biarkan kesilapan dilog dan alamatnya dengan menetapkan kod anda. Ini membantu mengekalkan integriti aplikasi anda dan menghalang isu -isu daripada diabaikan atau diabaikan.

Berhati-hati dengan mendedahkan terlalu banyak maklumat mengenai persediaan back-end anda, terutamanya jika anda menggunakan rangka kerja yang diketahui. Ini boleh mendedahkan permohonan anda kepada serangan yang berpotensi jika kelemahan keselamatan dalam rangka kerja itu ditemui. Juga, ingatlah untuk menghapuskan konfigurasi pembangunan apabila menolak pengeluaran untuk mengelakkan akses yang tidak dibenarkan.

  • 7 Lebih banyak kesilapan pemaju php sering membuat
  • Saya ditanya oleh seseorang dari Toptal untuk melihat senarai mereka dan berpotensi menyumbang, dan beberapa pengikut kami di rangkaian sosial menyatakan minat untuk melihat senarai itu juga, jadi saya ingin mengambil kesempatan ini untuk Tambahkan beberapa penyertaan saya sendiri ke senarai ini yang saya berulang kali perlu memberi amaran kepada ahli pasukan atau pengikut saya.
  • 1. Menggunakan Extension MySQL
Berita ini agak lama, tetapi bilangan pemaju yang tidak menyedari fakta itu membimbangkan. Apabila menggunakan pangkalan data SQL, khususnya MySQL, terlalu banyak pemaju masih memilih lanjutan MySQL. Pelanjutan MySQL secara rasmi ditutup. Ia tidak selamat, tidak boleh dipercayai, tidak menyokong SSL dan kehilangan beberapa ciri MySQL moden. Ia juga menghasilkan notis penolakan yang tidak memecahkan aplikasi anda, mereka hanya muncul di bahagian atas aplikasi anda. Hilariously, apa maksudnya adalah bahawa ia juga mungkin untuk hanya Google untuk semua laman web yang menggunakan persediaan tidak selamat ini dengan hanya mencari ini. Dunia yang menyakiti aplikasi tersebut terdedah kerana kekacauan ini mengejutkan.

Daripada menggunakan MySQL, pilih salah satu alternatif: MySQLI, atau PDO. Sebagai contoh, menggunakan mysqli sebaliknya hampir semudah menambah huruf "i" hingga akhir panggilan API:

<span>$c = mysql_connect("host", "user", "pass");
</span><span>mysql_select_db("database");
</span><span>$result = mysql_query("SELECT * FROM posts LIMIT 1");
</span><span>$row = mysql_fetch_assoc($result);</span>

vs

<span>$mysqli = new mysqli("host", "user", "pass", "database");
</span><span>$result = $mysqli->query("SELECT * FROM posts LIMIT 1");
</span><span>$row = $result->fetch_assoc();</span>

Itu sahaja yang diperlukan untuk membuat persediaan lebih selamat.

Anda harus memilih PDO, walaupun. Lebih banyak lagi pada titik 2.

2. Tidak menggunakan PDO

Jangan salahkan saya, Mysqli adalah generasi (agak harfiah) menjelang lanjutan MySQL purba. Ia disimpan terkini, selamat, boleh dipercayai dan cepat. Walau bagaimanapun, ia adalah spesifik MySQL. Menggunakan PDO sebaliknya akan membolehkan anda menggunakan beberapa sintaks yang berorientasikan objek praktikal, dan akan menyediakan anda untuk Tango dengan pangkalan data SQL yang lain seperti PostgreSQL, MS SQL, dan banyak lagi. Lebih -lebih lagi, PDO akan membolehkan anda menggunakan parameter yang dinamakan, ciri yang sangat berguna, beberapa orang boleh membayangkan pergi ke apa -apa lagi selepas mengambil kesempatan yang betul. Akhir sekali, ada ini: Anda boleh menyuntik data yang diambil terus ke dalam objek baru, yang merupakan timesaver yang menyenangkan dalam projek besar.

3. Tidak menulis semula URL

Satu lagi yang biasa diabaikan dan mudah untuk menyelesaikan masalah. URL seperti myapp.com/index.php?p=34&g=24 tidak boleh diterima pada hari ini dan umur. Oleh kerana ia sangat sukar untuk menulis panduan penulisan semula URL yang baik yang akan merangkumi setiap pelayan dan kerangka di luar sana, hampir setiap rangka kerja mempunyai panduan tentang cara menubuhkan URL bersih (Laravel, Phalcon, Symfony, Zend) dan mana -mana yang Don ' T tidak layak menggunakan - mereka jelas tidak peduli dengan amalan moden.

4. Kesalahan menekan

Saya menulis tentang ini dalam artikel sebelumnya, tetapi ia patut disebut semula. Bila -bila masa anda mendapati diri anda menggunakan pengendali @, mempertimbangkan semula dan mendekati masalah dari sudut yang berbeza dengan lebih berhati -hati. Ambil kata -kata saya apabila saya mengatakan bahawa 20 baris kod curl boilerplate di sekitar fungsi aplikasi lebih baik daripada satu baris dengan operator @ di hadapannya.

Saya dapati melalui eksperimen peribadi bahawa pendekatan yang baik adalah yang saya menganjurkan dalam jawatan asal - menjadikan semua notis anda menjadi kesilapan yang membawa maut. Memastikan

tiada apa -apa log masuk ke dalam log ralat kerana ada secara literal tiada apa -apa untuk log lebih baik daripada berpura -pura kotoran tidak memukul kipas dengan memegang @ di hadapan mata anda.

kami baru-baru ini merangkumi beberapa add-on Heroku untuk pengeluaran aplikasi PHP yang sedia ada, dan salah satunya adalah papertrail yang sangat baik-tambahan yang membolehkan anda menolak semua kesilapan aplikasi anda ke belakang mereka untuk mencari, mengumpulkan, dan menghapuskan lebih mudah pada; Jadi, walaupun beberapa kesilapan berlaku, lebih baik membiarkan mereka dilog masuk dan menyingkirkannya dengan menetapkan kod anda, daripada membungkam mereka dan bermain bisu di hadapan pengguna anda.

5. Menetapkan dalam keadaan

walaupun pemaju yang berpengalaman kadang -kadang mempunyai slip jari dan tulis jika ($ condition = 'value') {bukan jika ($ condition == 'value') {. Tangan kami akan tergelincir, papan kekunci kami tidak akan mendaftarkan keypress, kami akan menampal dari bahagian lain kod di mana tugasan sebenarnya berlaku - ia berlaku, dan kami biasanya mengetahui hanya apabila kami menjalankan aplikasi.

Terdapat beberapa cara untuk mengelakkan sepenuhnya:

    Gunakan IDE yang baik. Mana -mana IDE yang baik (seperti PHPStorm, sebagai contoh) akan memberi amaran kepada anda mengenai isu -isu "tugasan dalam keadaan" apabila ia mengesannya.
  1. Gunakan "keadaan Yoda". Anda akan melihatnya dalam banyak projek yang popular, walaupun rangka kerja yang besar. Dengan membalikkan perbandingan (seperti dalam, jika ('nilai' = $ keadaan) {), IDE yang lemah akan melihat masalah itu juga. Ada yang menganggap sintaks Yoda menjengkelkan dan tidak berguna, garis hayat di mana tidak ada ("lebih berhati -hati dengan kod anda, sial"), tetapi untuk masing -masing sendiri - jika ia membantu seseorang, saya semua untuk itu. Jika kita semua elitis, rangka kerja WordPress dan Zend tidak akan wujud.
  2. Dengan hanya menyimpannya, anda akan membangunkan refleks mata untuk menyemaknya setiap kali anda menulisnya. Apa yang diperlukan adalah amalan, tetapi ia berlaku walaupun kepada devs terbaik dan di mana 1 dan 2. Datang berguna.
6. Menjadi terlalu telus

mengatakan ini mungkin membangkitkan beberapa kontroversi, tetapi di sini juga berlaku. Kecuali anda mempunyai keyakinan 100% dalam pemaju rangka kerja, atau tidak mengendalikan aplikasi kritikal perniagaan yang tinggi dan tinggi, anda harus sentiasa berusaha untuk mengaburkan cara back-end anda-bukan penyiaran yang rangka kerja aplikasi anda sebenarnya boleh Bantuan dalam mencegah serangan, sekiranya kelemahan keselamatan rangka kerja itu ditemui. Contohnya:

Jika anda menggunakan penterjemah Symfony2 dan mempunyai laluan dengan peningkatan parameter {_locale} sekarang! http://t.co/jihxhb8mzt
- Jérémy derussé (@jderusse) 15 Julai 2014

Dalam tweet ini, pengetahuan mengenai isu suntikan kod yang serius sedang disiarkan ke domain awam. Ini bagus jika anda sedang bekerja dan dapat menaik taraf dengan segera tanpa masalah DevOps dan mendapatkan pasukan yang pertama, tetapi bagi kebanyakan orang dan syarikat yang menggunakan Symfony, ini tidak berlaku. Walaupun Symfony boleh ditingkatkan melalui komposer (seperti yang disebutkan oleh Ryan dalam komen di bawah), ia biasanya mengambil sedikit masa untuk mendapatkan kelulusan dalam pasukan besar dengan persekitaran pelbagai peringkat. Semua laman web yang menggunakan pendekatan penterjemah ini yang diisytiharkan pengguna Symfony adalah (adakah?) Oleh itu, terdedah kepada kelemahan ini sehingga tetap.

Menggunakan Symfony dalam contoh di atas hanya itu - contohnya. Situasi yang sama telah timbul dengan perisian lain yang banyak selama bertahun -tahun. Kembali ketika saya masih menggunakan Rangka Kerja Zend secara komersil, kami juga berlaku, dan mengalami serangan kerana itu. WordPress mempunyai bahagian gaffes keselamatan dan kita tahu berapa tinggi peratusan laman web di luar sana mereka kuasa. Perkara -perkara ini berlaku, dan kadang -kadang, sumber terbuka dan ketelusan bukanlah pendekatan terbaik apabila berurusan dengan aplikasi yang membawa majoriti aliran pendapatan syarikat.

7. Tidak mengeluarkan konfigurasi pembangunan

Terakhir tetapi tidak kurang, penyingkiran konfigurasi pembangunan harus disebutkan. Baru -baru ini (dan kebetulan yang jujur ??saya menyebutkan Symfony di sini sekali lagi), CNET mengalami serangan kerana tidak mengeluarkan konfigurasi pembangunan mereka.

uhmmm no: http://t.co/raqis1ycwq #security #symfony

- Marco Pivetta (@ocramius) 15 Julai 2014

CNET, salah satu laman berita teknologi terbesar di dunia, didasarkan pada Symfony. Symfony, seperti yang anda ketahui, menampilkan dua titik kemasukan ke aplikasi anda: app.php dan app_dev.php. Dengan menunjuk penyemak imbas anda kepada satu, anda mendapat persekitaran pengeluaran. Dengan menunjuk kepada yang mempunyai akhiran _dev, anda pasti mendapat versi pembangunan, yang mempunyai debugger, data sensitif, dan banyak lagi. Sama ada ini baik atau buruk adalah subjek banyak perbincangan (sekali lagi, terima kasih kepada Ryan kerana menunjuk ini), tetapi tidak dapat dinafikan bahawa ia membuka beberapa pemaju clumsier untuk kesilapan seperti yang dialami oleh CNET. Lebih -lebih lagi, mana -mana URL lain yang diakses apabila di app_dev akan diarahkan ke URL App_DEV yang lain. Dalam erti kata lain, bukan hanya halaman indeks yang dilancarkan dalam mod pembangunan, ia adalah keseluruhan laman web - dalam kes CNET, itu banyak akses.

Jika anda mengikuti perbincangan di Twitter, ia akan menjadi sangat sedih dengan cepat - dan apa yang lebih sedih adalah bahawa ia dapat dielakkan dalam kerja kedua:

  1. Devs boleh mengeluarkan app_dev.php dari pelayan pengeluaran
  2. Devs boleh mempunyai IPS Whitelisted yang dibenarkan untuk mengakses app_dev.php, iaitu bagaimana ia berfungsi secara lalai melainkan anda melonggarkan sekatan tersebut.

Sama ada pendekatan ini akan menghalang semua masalah. Ingat, apabila menolak pengeluaran, pastikan konfigurasi pembangunan anda sama ada tidak boleh diakses sepenuhnya, atau hanya boleh diakses dengan set IPS yang disenaraikan.

Kesimpulan

Bagaimana perasaan anda tentang senarai ini? Adakah ia meliputi aspek yang sama atau terlalu esoterik? Adakah anda mempunyai beberapa perangkap yang lebih umum yang tiga jawatan telah gagal disebutkan? Izinkan saya tahu dalam komen di bawah dan kami akan mengemas kini siaran jika nasihat anda adalah bunyi!

Atas ialah kandungan terperinci 7 Lebih banyak kesilapan yang biasanya dibuat oleh pemaju PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
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

Alat AI Hot

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

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

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Tutorial PHP
1488
72
Skop pembolehubah PHP dijelaskan Skop pembolehubah PHP dijelaskan Jul 17, 2025 am 04:16 AM

Masalah dan penyelesaian biasa untuk skop pembolehubah PHP termasuk: 1. Pembolehubah global tidak dapat diakses dalam fungsi, dan ia perlu diluluskan menggunakan kata kunci atau parameter global; 2. Pembolehubah statik diisytiharkan dengan statik, dan ia hanya dimulakan sekali dan nilai dikekalkan antara pelbagai panggilan; 3. Pembolehubah hyperglobal seperti $ _get dan $ _post boleh digunakan secara langsung dalam mana -mana skop, tetapi anda perlu memberi perhatian kepada penapisan yang selamat; 4. Fungsi Anonymous perlu memperkenalkan pembolehubah skop induk melalui kata kunci penggunaan, dan apabila mengubah suai pembolehubah luaran, anda perlu lulus rujukan. Menguasai peraturan ini boleh membantu mengelakkan kesilapan dan meningkatkan kestabilan kod.

Bagaimana cara mengendalikan fail memuat naik dengan selamat di PHP? Bagaimana cara mengendalikan fail memuat naik dengan selamat di PHP? Jul 08, 2025 am 02:37 AM

Untuk mengendalikan muat naik fail PHP dengan selamat, anda perlu mengesahkan sumber dan jenis, mengawal nama fail dan laluan, menetapkan sekatan pelayan, dan memproses fail media dua kali. 1. Sahkan sumber muat naik untuk mengelakkan CSRF melalui token dan mengesan jenis mime sebenar melalui finfo_file menggunakan kawalan putih; 2. Namakan semula fail ke rentetan rawak dan tentukan pelanjutan untuk menyimpannya dalam direktori bukan web mengikut jenis pengesanan; 3. Konfigurasi PHP mengehadkan saiz muat naik dan direktori sementara Nginx/Apache melarang akses ke direktori muat naik; 4. Perpustakaan GD menyambung semula gambar -gambar untuk membersihkan data yang berpotensi.

Mengulas kod dalam php Mengulas kod dalam php Jul 18, 2025 am 04:57 AM

Terdapat tiga kaedah umum untuk kod komen PHP: 1. Use // atau # untuk menyekat satu baris kod, dan disyorkan untuk menggunakan //; 2. Gunakan /.../ untuk membungkus blok kod dengan pelbagai baris, yang tidak boleh bersarang tetapi boleh diseberang; 3. Komen -komen kemahiran gabungan seperti menggunakan / jika () {} / untuk mengawal blok logik, atau untuk meningkatkan kecekapan dengan kunci pintasan editor, anda harus memberi perhatian kepada simbol penutupan dan mengelakkan bersarang apabila menggunakannya.

Bagaimana penjana berfungsi dalam php? Bagaimana penjana berfungsi dalam php? Jul 11, 2025 am 03:12 AM

Ageneratorinphpisamemory-efficientwaytoiterateOverlargedatasetsbyieldingvaluesonateatimeNsteadofreturningthemallatonce.1.GeneratorSuseTheyEldeyWorderWorderToProducevaluuesondemand,

Petua untuk menulis komen php Petua untuk menulis komen php Jul 18, 2025 am 04:51 AM

Kunci untuk menulis komen PHP adalah untuk menjelaskan tujuan dan spesifikasi. Komen harus menjelaskan "mengapa" dan bukannya "apa yang dilakukan", mengelakkan redundansi atau terlalu kesederhanaan. 1. Gunakan format bersatu, seperti docblock (/*/) untuk deskripsi kelas dan kaedah untuk meningkatkan keserasian dan keserasian alat; 2. Menekankan sebab -sebab di sebalik logik, seperti mengapa JS melompat perlu dikeluarkan secara manual; 3. Tambahkan gambaran keseluruhan gambaran sebelum kod kompleks, terangkan proses dalam langkah -langkah, dan membantu memahami idea keseluruhan; 4. Gunakan Todo dan Fixme secara rasional untuk menandakan item dan masalah untuk memudahkan penjejakan dan kerjasama berikutnya. Anotasi yang baik dapat mengurangkan kos komunikasi dan meningkatkan kecekapan penyelenggaraan kod.

Tutorial pemasangan php cepat Tutorial pemasangan php cepat Jul 18, 2025 am 04:52 AM

Toinstallphpquickly, usexampponwindowsorhomeBrewonmacos.1.onwindows, downloadandInstallxampp, selectcomponents, startapache, andplaceFilesinhtdocs.2.alternative, secara manualstallphpfromphp.netandsheBerver.3

Cara mengakses watak dalam rentetan dengan indeks dalam php Cara mengakses watak dalam rentetan dengan indeks dalam php Jul 12, 2025 am 03:15 AM

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.

Belajar PHP: Panduan Pemula Belajar PHP: Panduan Pemula Jul 18, 2025 am 04:54 AM

Tolearnphpeffectively, startbysettingupalocalverenvironmentusingToolsLikexamppandaCodeDitorLikevscode.1) InstallXamppforapa Che, MySql, danPhp.2) UseAcodeeditorForsyntaxSupport.3) testyoursetupwithasimplephpfile.next, learnphpbasicsincludingvariables, ech

See all articles