Anotasi PHP pada asasnya adalah metadata yang boleh disertakan dalam kod sumber dan juga di antara kelas, fungsi, sifat dan kaedah. Ia harus dimulakan dengan awalan @ di mana sahaja ia diisytiharkan dan ia menunjukkan sesuatu yang khusus. Maklumat yang mereka berikan ini sangat berguna kepada pengkod, membantu untuk tujuan dokumentasi dan juga IDE boleh menggunakan ini untuk memaparkan jenis pembayang pop timbul tertentu. Anotasi yang sama juga boleh digunakan untuk tujuan lain selain pengesahan seperti untuk menentukan jenis input yang perlu diberikan dalam bentuk dan juga untuk tujuan automasi. Terdapat pelbagai jenis anotasi seperti jenis @var dan @int yang boleh digunakan untuk kegunaan tertentu seperti yang dicadangkan oleh namanya sendiri.
IKLAN Kursus Popular dalam kategori ini PEMBANGUN PHP - Pengkhususan | 8 Siri Kursus | 3 Ujian Olok-olokMulakan Kursus Pembangunan Perisian Percuma Anda
Pembangunan web, bahasa pengaturcaraan, ujian perisian & lain-lain
Anotasi PHP digunakan dengan memberi awalan @ dan sintaksnya adalah seperti berikut:
class Example { // @var integer public $new; }
Anotasi ialah @var di sini dan bila-bila masa ia ditemui sejurus sebelum sekeping mana-mana kod (public $new di sini sebagai contoh) ia menunjukkan bahawa $new adalah mempunyai nilai jenis integer seperti yang diberitahu oleh anotasi.
class Example { // @var integer // @range(0, 51) // @label('Count of shops') public $shop; }
Anotasi juga boleh digunakan untuk menentukan julat di mana ia memaparkan nilai maksimum dan minimum yang akan diterima sebagai nilai integer untuk fungsi dan label memberikan tujuan fungsi ini.
Diberikan di bawah adalah jenis:
Terdapat 2 fungsi terbina dalam dalam anotasi iaitu seperti berikut:
a. Disusun: Anotasi ini menunjukkan bahawa jika kaedah/fungsi harus disusun JIT atau tidak. Ia juga merupakan jenis anotasi skop fungsi.
b. SuppressWarnings: Ini adalah satu lagi anotasi terbina dalam yang bermaksud bahawa sebarang amaran yang dilemparkan sebagai sebahagian daripada pelaksanaan kod seterusnya di bawahnya mesti ditindas.
Ini ialah jenis anotasi yang boleh digunakan untuk memohon anotasi lain. Ia digunakan untuk konfigurasi anotasi.
a. @Anotasi
Terdapat sejenis kelas anotasi yang akan mengandungi @anotasi.
Kod:
[@Annotation] class MyAnnoExample { // piece of code }
b. @Sasaran
Seperti namanya, anotasi ini menunjukkan jenis elemen kelas atau kaedah yang digunakan untuk anotasi.
Setelah ini kita boleh menerangkan satu atau banyak sasaran:
c. @Boleh diulang
Anotasi ini bermakna ia boleh diulang beberapa kali apabila digunakan.
d. @Diwarisi
Ini juga boleh digunakan pada kelas anotasi yang ditentukan pengguna lain sebagai anotasi meta. Anotasi yang diwarisi ini diwarisi secara automatik kepada subkelas masing-masing apabila ia digunakan pada superclass.
Ini sangat serupa dengan pengisytiharan kelas biasa. Setiap elemen jenis anotasi ditakrifkan oleh setiap pengisytiharan harta.
Diberikan di bawah adalah contoh yang dinyatakan:
Kod:
// namespace declaration here [@Annotation] [@Target("class")] class MyAnnoEx { [@Required] public string $prop; public array $arrayProp = []; public embedAnno $embed; } [@Annotation] // code for embedded annotation goes here [@Target(["class", "annotation"])] class embedAnno { } [@Annotation] // example for target annotation [@Target("property")] class propAnno { } @Annotation // code for method annotation goes here @Target("method") class methodAnno { public string $val; public function __construct(string $val) { $this->val = $val; } }
Ini hanyalah contoh asas yang menunjukkan penggunaan semua jenis anotasi yang ditunjukkan di atas. Semua yang dalam contoh seperti anotasi benam, anotasi sifat, anotasi kaedah ialah anotasi tersuai.
Kod:
<!DOCTYPE html> <html> <body> <?php /** * @Replace("exmaple", "for", "annotation") */ class MyNamedComponent { } echo str_replace("First", "Second", "First Example"); ?> </body> </html>
Output:
Dalam contoh ini kami menamakan anotasi sebagai ganti kerana kod di bawah mewakili penggunaan fungsi penggantian rentetan iaitu str_replace, fungsi terbina PHP. Menggunakan fungsi ini, parameter pertama yang diluluskan dalam fungsi digantikan dengan yang kedua.
Kod:
<!DOCTYPE html> <html> <head> <title>Simple Form Processing</title> </head> <body> <h1>Form Processing using PHP</h1> <fieldset> <form id="formex1" method="post" action="formexample.php"> <!--Declaring First name for the form @Annotation text first_name--> First_Name: <input type="text" name="First_Name"/> <!--@var style color--> <span style="color:blue;">*</span> <br> <br> <!--Declaring Last_Name for the form @Annotation text last_name--> Last_Name: <input type="text" name="last_name"/> <span style="color:blue;">*</span> <br> <br> <!--Declaring Location for the form @Annotation text location--> Stay location: <input type="text" name="location"/> <span style="color:blue;">*</span> <br> <br> <!--Declaring EMAILID for the form @Annotation text email--> EmailID: <input type="email" name="emailID"/> <span style="color:blue;">*</span> <br> <br> <!--Declaring Password for the form @Annotation password--> Password: <input type="password" name="password"/> <span style="color:blue;">*</span> <br> <br> <!--Declaring Password for the form @Radio button password--> Gender: <!-- Gender to be selected as either male or female --> <input type="radio" value="Male" name="gender"> Male <input type="radio" value="Female" name="gender">Female <br> <br> <input type="confirm" value="confirm" name="confirm" /> </form> </fieldset> <?php if(example($_POST['confirm'])) { if(!example($error)) { echo"<h1>DETAILS RECEIVED</h1><br>"; echo "<table border='2'>"; echo "<thead>"; echo "<th>Argument</th>"; echo "<th>Value</th>"; echo "</thead>"; echo "<tr>"; echo "<td>First Name</td>"; echo "<td>".$First_Name."</td>"; echo "</tr>"; echo "<tr>"; echo "<td>Last_Name</td>"; echo "<td>".$last_name."</td>"; echo "</tr>"; echo "<tr>"; echo "<td>Stay location</td>"; echo "<td>".$location."</td>"; echo "</tr>"; echo "<tr>"; echo "<td>Email Stay location</td>"; echo "<td>" .$emailID."</td>"; echo "</tr>"; echo "<tr>"; echo "<td>Password</td>"; echo "<td>".$password."</td>"; echo "</tr>"; echo "<tr>"; echo "<td>Gender</td>"; echo "<td>".$gender."</td>"; echo "</tr>"; echo "</table>"; } } ?> </body> </html>
Output:
Dalam contoh ini, kami menunjukkan anotasi dalam kombinasi dengan pengesahan borang dalam PHP. Dengan menggunakan anotasi, kami melabelkan semua parameter yang diperlukan sebagai parameter input pada borang seperti nama pertama dan akhir, e-mel, lokasi dan kata laluan.
Dengan contoh di atas, kami dapati bagaimana anotasi ialah alat yang berkuasa untuk menggunakan dan menyatakan metadata tentang kaedah, kelas atau sifat kami. Kami juga telah melihat cara menggabungkan pelbagai jenis anotasi untuk mengisytiharkan pekerja yang akan melaksanakan tugas tertentu dengan menulis beberapa metadata tentang mereka. Ini menjadikan mereka mudah dicari dan memberikan maklumat sebenar sama ada ia boleh digunakan atau tidak.
Atas ialah kandungan terperinci Anotasi PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!