جميع الأدوات
مجاني

مرجع PHP 8.3+ قابل للبحث والطباعة — البنية والسلاسل والمصفوفات والدوال والأصناف والتعدادات والخصائص والميزات الحديثة. مجاني.

Basics & types

10
declare(strict_types=1);
Enforce strict scalar type checks
$x = 1;
Variables start with a dollar sign
const MAX = 100;
Compile-time constant
gettype($x)
Get the type of a value
(int) $x
Cast to an integer
is_int($x)
Type-check helper (is_string, ...)
int|string $x
Union type declaration
?string $x
Nullable type (string or null)
$a ?? 'default'
Null coalescing operator
$a ??= 'default'
Assign only if null

Strings

11
"Hello $name"
Double quotes interpolate variables
'literal $x'
Single quotes are literal
$a . $b
Concatenate strings
strlen($s)
Byte length of a string
str_contains($s, 'a')
Check for a substring
str_starts_with($s, 'a')
Check the prefix
substr($s, 0, 3)
Extract part of a string
str_replace('a', 'b', $s)
Replace all occurrences
explode(',', $s)
Split into an array
sprintf('%05.2f', $n)
Formatted string output
trim($s)
Strip surrounding whitespace

Arrays

11
$a = [1, 2, 3];
Indexed array literal
$a = ['k' => 'v'];
Associative array
array_map(fn($x) => $x * 2, $a)
Transform each element
array_filter($a, fn($x) => $x > 0)
Keep matching elements
array_reduce($a, $fn, 0)
Reduce to a single value
in_array($v, $a, true)
Strict value check
array_keys($a)
Get all keys
array_merge($a, $b)
Merge arrays
[...$a, ...$b]
Spread/merge arrays
count($a)
Number of elements
[$x, $y] = $a;
Array destructuring

Functions

9
function f(int $a): int {}
Typed parameters and return
function f(int $a = 1) {}
Default parameter value
function f(int ...$nums) {}
Variadic parameters
f(...$args)
Spread arguments
f(name: 'Sam', age: 30)
Named arguments
$fn = fn($x) => $x + 1;
Arrow function (auto-captures scope)
function () use ($x) {}
Closure capturing a variable
$fn = strlen(...);
First-class callable syntax
function f(): never {}
Never returns (throws or exits)

Control flow

9
if ($a) {} elseif ($b) {} else {}
Conditional branches
$a ? $b : $c
Ternary expression
$a ?: $b
Short ternary (falsy fallback)
match ($x) { 1, 2 => 'a', default => 'b' }
Strict, expression-based match
switch ($x) { case 1: break; }
Loose multi-way branch
foreach ($a as $k => $v) {}
Iterate keys and values
for ($i = 0; $i < 10; $i++) {}
Counted loop
while ($cond) {}
Loop while a condition holds
break / continue
Exit or skip a loop iteration

Classes & OOP

10
class A extends B implements C {}
Inheritance and interfaces
public function __construct(private int $id) {}
Constructor property promotion
public readonly string $name;
Immutable after initialization
public function f(): static {}
Return the late-bound type
static::create()
Late static binding
$obj?->method()
Null-safe method call
abstract class A {}
Cannot be instantiated directly
trait T {} use T;
Reusable horizontal code
$obj instanceof A
Type check at runtime
A::class
Fully-qualified class name string

Enums

9
enum Status { case Active; case Draft; }
Pure enumeration
enum Status: string { case A = 'a'; }
Backed enum (string/int)
Status::Active
Reference an enum case
Status::from('a')
Build from a backing value
Status::tryFrom('x')
Returns null if invalid
Status::cases()
Array of all cases
$status->value
Backing value of a case
$status->name
Name of the case
enum E { public function label() {} }
Enums can have methods

Error handling

9
try {} catch (Throwable $e) {}
Catch errors and exceptions
catch (TypeError | ValueError $e)
Catch multiple types
catch (Exception)
Non-capturing catch (no variable)
finally {}
Always runs after try/catch
throw new RuntimeException('x')
Throw an exception
throw $e;
Re-throw the caught exception
$x = $v ?? throw new Error();
Throw as an expression
$e->getMessage()
Read the error message
$e->getPrevious()
Get the chained exception

Attributes & modern

9
#[Attribute] class Route {}
Declare a custom attribute
#[Route('/home')]
Apply an attribute to a target
new ReflectionClass($x)
Inspect a class via reflection
$ref->getAttributes()
Read declared attributes
json_encode($data)
Serialize to JSON
json_decode($s, true)
Decode JSON to an array
array_is_list($a)
True if keys are 0..n in order
str_word_count($s)
Count words in a string
$obj::class
Class name from an instance

لا يوجد إدخال يطابق “:q”.


حول ورقة PHP المرجعية

تكثّف ورقة غش PHP هذه لغة PHP الحديثة في صفحة واحدة قابلة للبحث: الأساسيات والأنواع، السلاسل، المصفوفات، الدوال، تدفق التحكم، الفئات والبرمجة الكائنية، التعدادات (enums)، معالجة الأخطاء، والسمات (attributes) وميزات حديثة أخرى. كل صف مقتطف قابل للتشغيل مع وصف بلغة واضحة.

تستهدف PHP 8.3+، فتجد فيها الميزات التي تحدّد PHP الحالية — التعدادات، الخصائص للقراءة فقط (readonly)، ترقية خصائص المُنشئ، الوسائط المسمّاة، تعبيرات match، الدوال السهمية، الاستدعاءات الآمنة من العدم (nullsafe) والسمات — إلى جانب دوال السلاسل والمصفوفات اليومية التي تلجأ إليها باستمرار.

الصفحة مجانية وتعمل بالكامل من جهة العميل: يصفّي البحث الصفوف أثناء الكتابة، وقائمة الأقسام اللاصقة تنقلك في أرجاء الورقة، ونقرة واحدة تنسخ أي مقتطف، وزر طباعة يحوّلها إلى مرجع PHP ورقي.

كيفية استخدام ورقة PHP المرجعية

  1. استعرض جدول المحتويات — من الأساسيات والأنواع إلى التعدادات ومعالجة الأخطاء والسمات وميزات حديثة.
  2. اكتب اسم دالة أو كلمة مفتاحية في مربع البحث لتصفية الورقة بأكملها فوراً.
  3. انتقل إلى قسم مثل الفئات والبرمجة الكائنية عبر التنقل الجانبي اللاصق.
  4. انقر أي مقتطف أو أيقونة نسخه لنسخ شيفرة PHP إلى حافظتك.
  5. اضغط "طباعة" إذا أردت المرجع بأكمله على الورق.

الأسئلة الشائعة

كُتبت لـPHP 8.3 وما بعده. تغطي أقسام التعدادات والسمات والميزات الحديثة الخصائص للقراءة فقط، وترقية المُنشئ، وتعبيرات match، والوسائط المسمّاة، والاستدعاءات الآمنة من العدم، إضافة إلى الصياغة الكلاسيكية.

تسعة أقسام: الأساسيات والأنواع، السلاسل، المصفوفات، الدوال، تدفق التحكم، الفئات والبرمجة الكائنية، التعدادات، معالجة الأخطاء، والسمات وميزات حديثة — الأجزاء التي تستخدمها يومياً في مشاريع حقيقية.

استخدم مربع البحث أعلى الصفحة. يصفّي كل صف حياً عبر كل الأقسام ويعرض عدد المطابقات، فكتابة شيء مثل array_map يضيّق الورقة إلى المقتطفات ذات الصلة فوراً.

نعم. انقر على الشيفرة نفسها أو أيقونة النسخ عند التمرير وسينزل المقتطف على حافظتك، مؤكَّداً بومضة "تم النسخ!" قصيرة.

نعم، مجاني تماماً. يُعرَض في متصفحك، لا يحتاج حساباً ويمكن طباعته بقدر ما تشاء.

شارك هذا

عمليات البحث الشائعة
php cheat sheet مرجع صياغة php دوال المصفوفات في php دوال النصوص في php مثال enums في php php 8 attributes php oop cheat sheet مثال try catch في php
هل تحتاج إلى مساعدة؟
هل واجهت مشكلة في هذه الأداة؟ أخبر فريقنا.
الإبلاغ عن مشكلة

أضف هذه الأداة المجانية إلى موقعك الخاص — انسخ والصق الكود أدناه.