SourceHunt September - Edisi Hacktoberfest
Mengambil bahagian dalam Hacktoberfest DigitalOcean untuk menyumbang kepada projek sumber terbuka!
Sorotan Aktiviti:
- Hacktoberfest DigitalOcean diaktifkan, menggalakkan semua orang menyumbang kod kepada pelbagai projek sumber terbuka. Lengkapkan 4 permintaan tarik untuk mendapatkan t-shirt sebagai pengiktirafan sumbangan anda kepada komuniti sumber terbuka.
- Projek yang disyorkan termasuk: Memudahkan pakej Kodus/Mail untuk Mailing UTF-8;
- Projek-projek lain yang perlu disertakan termasuk: Rangka Pertukaran Mata Wang Florianv/Penukar;
Ini adalah acara sumber terbuka satu bulan yang menggalakkan semua orang menyumbang kod kepada pelbagai projek sumber terbuka (bukan projek mereka sendiri). Hantar 4 permintaan tarik (walaupun dokumen pembetulan dikira!) Untuk mendapatkan t-shirt pada akhir bulan, melambangkan sumbangan anda kepada komuniti sumber terbuka.
Sudah tentu, sumber terbuka lebih daripada sebulan, tetapi ia adalah permulaan yang sangat baik bagi mereka yang biasanya tidak menghabiskan masa menyumbang kepada projek pemaju lain.
Jika anda ingin mengambil bahagian, anda juga boleh memilih beberapa dari senarai projek yang telah kami kumpulkan pada bulan ini. Jika anda tidak berminat dengan projek -projek ini, anda boleh melawat tag PHP Sourcehunt untuk melihat sama ada anda boleh mencari projek yang lebih menarik.
mari kita mulakan!
Kodus/mel [3 ★]
Kodus telah dikemukakan kepada Sourcehunt selepas kami menerbitkan artikel kami "Menggunakan PHP dan Swiftmailer untuk merekrut spam".
Kodus/Mail adalah pakej peringkat alfa baru yang direka untuk menjadikan UTF-8 mel mudah ketika melangkau semua beban gaya lama (autoloading gaya lama, penamaan konvensyen, dll.) Yang datang dengan Swiftmailer. Seperti yang dikatakan penulis, matlamatnya adalah untuk "menggunakan PHP moden dan mengehadkan skop fungsi untuk kesederhanaan".
Ini adalah peluang yang baik untuk anda menyertai projek yang sangat menjanjikan!
voku/arrayy [20 ★]
Arrayy adalah antara muka operasi array yang berorientasikan objek yang kuat dan serba boleh. ReadMe diperkenalkan seperti berikut:
Ini hanyalah salah satu rantaian operasi yang hampir tidak terhingga yang disediakan oleh Arrayy. Penggunaan lain termasuk:
Arrayy::create(['Array', 'Array'])->unique()->append('y')->implode() // Arrayy
-
createFromString(string $str) : Arrayy
(tidak berubah) Buat objek Arrayy baru melalui rentetan.
Arrayy::create(['Array', 'Array'])->unique()->append('y')->implode() // Arrayy
-
append(mixed $value) : Arrayy
(Variable) tambah nilai ke array semasa. Alias: "Arrayy- & gt; tambah ()"
$arrayy = A::createFromString(' foo, bar '); // Arrayy['foo', 'bar']
-
containsCaseInsensitive(string $value) : boolean
memeriksa sama ada rentetan (case-insensitive) adalah dalam array semasa.
a(['fòô' => 'bàř'])->append('foo'); // Arrayy['fòô' => 'bàř', 0 => 'foo']
-
each(Closure $closure) : Arrayy
(tidak berubah) melangkah ke atas array semasa dan mengubah suai nilai array.
a(['E', 'é'])->containsCaseInsensitive('É'); // true
-
find(Closure $closure) : mixed
Cari item pertama dalam array untuk lulus ujian kebenaran, jika tidak, kembali palsu.
$result = A::create(); $closure = function ($value) { return ':' . $value . ':'; }; a(['foo', 'bar' => 'bis'])->each($closure); // Arrayy[':foo:', 'bar' => ':bis:']
-
randomWeighted(array $array, int|null $take) : Arrayy
(tidak berubah) Dapatkan nilai rawak dari array dan dapat mencetuskan hasilnya.
$search = 'foo'; $closure = function ($value, $key) use ($search) { return $value === $search; }; a(['foo', 'bar', 'lall'])->find($closure); // 'foo'
-
searchValue(mixed $index) : Arrayy
(tidak berubah) Cari nilai array semasa melalui indeks $.
a([0 => 3, 1 => 4])->randomWeighted([1 => 4]); // 例如:Arrayy[4](有 66% 的概率返回 4)
-
toJson() : string
Menukar array semasa ke JSON.
a(['fòô' => 'bàř'])->searchValue('fòô'); // Arrayy[0 => 'bàř']
... Terdapat lebih banyak ciri. Projek ini telah lama wujud, tetapi walaupun diuji dengan baik dan didokumentasikan dengan baik, ia belum lagi diterima pakai, jadi mari kita berharap Sourcehunt dapat membantu!
voku/mudah alih-utf8 [76 ★]
Sama seperti pakej Arrayy di atas ditulis oleh orang yang sama, Portable-UTF8 adalah pelaksanaan UTF-8 dalam PHP tanpa sebarang prasyarat lanjutan. Dalam erti kata lain, UTF-8 akan didayakan pada pelayan anda tanpa mengira sama ada pelayan anda mempunyai lanjutan yang menyokong UTF-8 atau tidak. Jika lanjutan hilang, polyfills Symfony akan digunakan.
Saya akan membiarkan bahagian "Sebab" memberitahu anda mengapa pakej ini wujud:
Adalah penting untuk diperhatikan bahawa jika anda sudah menggunakan beberapa ciri khusus UTF-8 dalam aplikasi anda, peralihan ke pakej ini bukanlah tugas yang mudah, kerana ia bukan pengganti langsung. Oleh kerana sifat pakej, ia juga patut diingat bahawa ia akan menjadi kebergantungan yang sukar. Namun, ia seolah -olah berbaloi memandangkan manfaatnya.Php 5 dan lebih awal tidak mempunyai sokongan Unicode asli. Untuk menjembatani jurang ini, terdapat beberapa sambungan, seperti "mbstring", "iconv" dan "intl".
Masalah dengan "mbstring" dan sambungan lain ialah dalam kebanyakan kes, anda tidak dapat memastikan bahawa terdapat sambungan khusus pada pelayan. Jika anda bergantung pada salah satu daripada ini, permohonan anda tidak lagi mudah alih. Masalah ini menjadi lebih serius untuk aplikasi sumber terbuka yang mesti dijalankan pada pelayan yang berbeza dengan konfigurasi yang berbeza.
Pakej ini tidak mempunyai masalah yang tidak dapat diselesaikan atau permintaan tarik, dan tidak ada todo yang ditakrifkan, tetapi liputan ujian dan skor penelit boleh diperbaiki, jadi jika anda ingin menyumbang dengan mengoptimumkan tahap ujian dan kualiti kod yang dirasakan, ini adalah peluang sekarang.
php-integrator/atom-base [168 ★]
PHP-integrator adalah pakej atom yang memudahkan pemeriksaan kod statik-iaitu, ia menambah banyak penyelesaian kod berguna dan kod yang mendorong ciri dalam phpStorm ke atom.
Ia kini bergantung kepada atom kerana ia adalah pakej atom, tetapi kod PHPnya dapat dengan mudah diekstrak dan digunakan untuk editor lain dengan cangkuk yang membuat integrasi mungkin. Idea lain - mengapa tidak membuatnya berfungsi dengan Docker keluar dari kotak untuk membantu orang mengelakkan memasang PHP pada sistem operasi tuan rumah mereka? Sertailah!
Florianv/penukar [7 ★]
Pakej ini adalah "rangka kerja pertukaran mata wang", yang bermaksud ia digunakan untuk membangunkan pakej pertukaran mata wang . Fikirkannya sebagai standard yang dapat membantu anda mengembangkan pakej pertukaran mata wang anda sendiri.
Pelaksanaan yang menarik dari "rangka kerja" ini adalah pakej swap popular pengarang yang sama.
Walaupun kedua -dua pakej agak matang, penukar boleh melakukan lebih baik.
Dengan cara ini, jika anda berminat menulis artikel mengenai penukar dan menunjukkan fungsi kerangka, sila hubungi kami - kami mencari!
rinvex/negara [383 ★]
seperti yang dikatakan oleh penerangan:
Rinvex Country adalah pakej yang mudah dan ringan untuk carian fleksibel mengenai butiran negara. Ia menyediakan sejumlah besar data, termasuk nama, populasi, ibu kota, kod ISO, kod dail, data geografi, mata wang, logo, emojis, dan atribut lain di 250 negara di seluruh dunia, di hujung jari anda.
Contoh:
Arrayy::create(['Array', 'Array'])->unique()->append('y')->implode() // Arrayy
Sebagai seseorang yang sedang membina dua aplikasi geo-menyedari berasingan, saya benar-benar menghargai pakej ini-ia menjadikan perkara lebih mudah apabila mengendalikan maklumat negara yang sama.
Perpustakaan sudah mempunyai kadar penggunaan yang cukup baik kerana dokumentasi serba boleh dan skor kualiti kod yang sangat baik, tetapi masih mempunyai lebih banyak pengguna dan penyumbang yang tersedia. Bolehkah anda menolong? Anda boleh menyelesaikan beberapa masalah sekarang!
scriptfusion/mapper [7 ★]
jujur, saya tidak tahu apa ini, atau apa yang saya akan lakukan dengannya, tetapi Ocramius memuji, jadi saya memasukkannya ke dalam senarai.
Jika anda rasa anda boleh menerangkan apa ini kepada pemula yang lengkap, sila hubungi kami dan kami akan membayar anda untuk menulis artikel ini.
lufficc/laravel-blog [164 ★]
Sistem blog Laravel 5.3! Dari maklum balas, ia cukup baik, tetapi pastinya memerlukan lebih banyak ciri. Mengapa tidak menyertai dan membantu?
Jika anda melakukannya, sila beritahu kami-kami lebih senang menjalankan analisis menyeluruh!
corollalium/ psr6-profilecachepool/ [9 ★]
Adakah anda menggunakan cache PSR-6? Jika ya, anda mungkin berminat dengan penganalisis ini, yang memantau bilangan hits dan terlepas yang dilaksanakan oleh cache. Ia tidak berfungsi melainkan jika anda melihat beberapa perbezaan dan ingin debug, tetapi jika anda memerlukannya, di sini!
Mengapa tidak menyumbang kepada pakej dengan menambahkan lebih banyak format laporan (carta animasi?) Atau statistik lain untuk menjejaki?
Ini adalah apa yang berlaku pada bulan September - seperti biasa, sila hantar pautan anda menggunakan tag #SourceHunt! Sekarang, mari kita mulakan Hacktoberfest! Beritahu kami apa yang anda buat dan mengucapkan selamat datang kepada anda!
Atas ialah kandungan terperinci SourceHunt September - Edisi Hacktoberfest. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

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

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

Undress AI Tool
Gambar buka pakaian secara percuma

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

Alipay Php ...

JWT adalah standard terbuka berdasarkan JSON, yang digunakan untuk menghantar maklumat secara selamat antara pihak, terutamanya untuk pengesahan identiti dan pertukaran maklumat. 1. JWT terdiri daripada tiga bahagian: header, muatan dan tandatangan. 2. Prinsip kerja JWT termasuk tiga langkah: menjana JWT, mengesahkan JWT dan muatan parsing. 3. Apabila menggunakan JWT untuk pengesahan di PHP, JWT boleh dijana dan disahkan, dan peranan pengguna dan maklumat kebenaran boleh dimasukkan dalam penggunaan lanjutan. 4. Kesilapan umum termasuk kegagalan pengesahan tandatangan, tamat tempoh, dan muatan besar. Kemahiran penyahpepijatan termasuk menggunakan alat debugging dan pembalakan. 5. Pengoptimuman prestasi dan amalan terbaik termasuk menggunakan algoritma tandatangan yang sesuai, menetapkan tempoh kesahihan dengan munasabah,

Sesi rampasan boleh dicapai melalui langkah -langkah berikut: 1. Dapatkan ID Sesi, 2. Gunakan ID Sesi, 3. Simpan sesi aktif. Kaedah untuk mengelakkan rampasan sesi dalam PHP termasuk: 1. Gunakan fungsi Sesi_Regenerate_ID () untuk menjana semula ID Sesi, 2. Data sesi stor melalui pangkalan data, 3.

Penerapan prinsip pepejal dalam pembangunan PHP termasuk: 1. Prinsip Tanggungjawab Tunggal (SRP): Setiap kelas bertanggungjawab untuk hanya satu fungsi. 2. Prinsip Terbuka dan Tutup (OCP): Perubahan dicapai melalui lanjutan dan bukannya pengubahsuaian. 3. Prinsip Penggantian Lisch (LSP): Subkelas boleh menggantikan kelas asas tanpa menjejaskan ketepatan program. 4. Prinsip Pengasingan Antara Muka (ISP): Gunakan antara muka halus untuk mengelakkan kebergantungan dan kaedah yang tidak digunakan. 5. Prinsip Inversi Ketergantungan (DIP): Modul peringkat tinggi dan rendah bergantung kepada abstraksi dan dilaksanakan melalui suntikan ketergantungan.

Bagaimana cara debug mod CLI dalam phpstorm? Semasa membangun dengan PHPStorm, kadang -kadang kita perlu debug PHP dalam mod Interface Line Command (CLI) ...

Artikel membincangkan ciri -ciri keselamatan penting dalam rangka kerja untuk melindungi daripada kelemahan, termasuk pengesahan input, pengesahan, dan kemas kini tetap.

Bagaimana untuk menetapkan keizinan UnixSocket secara automatik selepas sistem dimulakan semula. Setiap kali sistem dimulakan semula, kita perlu melaksanakan perintah berikut untuk mengubahsuai keizinan UnixSocket: sudo ...

Fungsi penghitungan dalam Php8.1 meningkatkan kejelasan dan jenis keselamatan kod dengan menentukan pemalar yang dinamakan. 1) Penghitungan boleh menjadi bilangan bulat, rentetan atau objek, meningkatkan kebolehbacaan kod dan keselamatan jenis. 2) Penghitungan adalah berdasarkan kelas dan menyokong ciri-ciri berorientasikan objek seperti traversal dan refleksi. 3) Penghitungan boleh digunakan untuk perbandingan dan tugasan untuk memastikan keselamatan jenis. 4) Penghitungan menyokong penambahan kaedah untuk melaksanakan logik kompleks. 5) Pemeriksaan jenis dan pengendalian ralat yang ketat boleh mengelakkan kesilapan biasa. 6) Penghitungan mengurangkan nilai sihir dan meningkatkan keupayaan, tetapi memberi perhatian kepada pengoptimuman prestasi.
