Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Anotasi PHP

Anotasi PHP

PHPz
PHPzasal
2024-08-29 13:02:09579semak imbas

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-olok

Mulakan Kursus Pembangunan Perisian Percuma Anda

Pembangunan web, bahasa pengaturcaraan, ujian perisian & lain-lain

Sintaks

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.

Jenis Anotasi PHP

Diberikan di bawah adalah jenis:

1. Anotasi Terbina dalam

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.

2. Anotasi Meta

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:

  • Anotasi harta benda adalah sebelum pengisytiharan kelas harta benda.
  • Kelas yang dibenarkan sebelum pengisytiharan kelas.
  • Fungsi diisytiharkan sebelum pengisytiharan fungsi.
  • Anotasi kaedah membenarkan meneruskan pengisytiharan kaedah.
  • Anotasi dibenarkan untuk meneruskan ke pengisytiharan kelas anotasi.

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.

3. Anotasi Tersuai

Ini sangat serupa dengan pengisytiharan kelas biasa. Setiap elemen jenis anotasi ditakrifkan oleh setiap pengisytiharan harta.

Contoh Anotasi PHP

Diberikan di bawah adalah contoh yang dinyatakan:

Contoh #1

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.

Contoh #2

Kod:

<!DOCTYPE html>
<html>
<body>
<?php
/**
* @Replace("exmaple", "for", "annotation")
*/
class MyNamedComponent
{
}
echo str_replace("First", "Second", "First Example");
?>
</body>
</html>

Output:

Anotasi PHP

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.

Contoh #3

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:

Anotasi PHP

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.

Kesimpulan

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!

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
Artikel sebelumnya:Kaedah PHP GETArtikel seterusnya:Kaedah PHP GET