سبد خرید شما خالی است.

ما یک شرکت حرفه ای برای گسترش کسب و کار های آنلاین و دیجیتال مارکتینگ هستیم

گالری تصاویر

ارتباط با ما

چهارمحال و بختیاری - شهرکرد

info@domain.com

0383-12345678

دسته: آموزش رایگان php

مقایسه دستور switch و if-else در PHP

در PHP، هر دو ساختار switch و if-else برای کنترل جریان برنامه استفاده می‌شوند.

اما هرکدام کاربرد خاص خود را دارند و در شرایط مختلف بهتر عمل می‌کنند. در ادامه این دو دستور را از نظر عملکرد، کارایی و استفاده مقایسه می‌کنیم.


۱. تعریف و نحوه‌ی کارکرد

if-else

دستور if-else برای بررسی شرط‌های منطقی استفاده می‌شود. این دستور زمانی که مقایسه‌های پیچیده و ترکیبی لازم است، بهتر عمل می‌کند.

مثال:

$number = 10;

if ($number > 10) {
    echo "عدد بزرگ‌تر از 10 است";
} elseif ($number == 10) {
    echo "عدد برابر 10 است";
} else {
    echo "عدد کوچک‌تر از 10 است";
}
  • شرط‌ها می‌توانند شامل عبارات منطقی مانند && و || باشند.
  • می‌توان از عملگرهای مقایسه‌ای مانند ==، >، <، != و غیره استفاده کرد.

switch

دستور switch زمانی استفاده می‌شود که نیاز به مقایسه مقدار یک متغیر با چند مقدار ثابت باشد. این دستور خوانایی بیشتری نسبت به if-else دارد، مخصوصاً وقتی تعداد زیادی مقدار باید بررسی شوند.

مثال:

$day = "Monday";

switch ($day) {
    case "Monday":
        echo "امروز دوشنبه است.";
        break;
    case "Tuesday":
        echo "امروز سه‌شنبه است.";
        break;
    default:
        echo "روز مشخص نشده است.";
}
  • مقدار متغیر فقط با مقدارهای مشخص مقایسه می‌شود.
  • هر case باید با break خاتمه یابد، مگر اینکه بخواهید اجرای سایر case‌ها ادامه پیدا کند (موسوم به fall-through).

۲. تفاوت‌های اصلی

ویژگیif-elseswitch
نوع مقایسههر نوع شرط منطقی، عددی، مقایسه‌ای و ترکیبیفقط مقایسه مقدار متغیر با مقادیر ثابت
میزان خواناییبرای شرایط پیچیده مناسب‌تربرای مقایسه مقدار متغیر با مقدارهای ثابت خواناتر است
سرعت اجرادر شرایط معمول مشابه switch، اما در بررسی‌های زیاد کندتردر مقایسه‌های زیاد سریع‌تر عمل می‌کند
استفاده از عملگرهاامکان استفاده از >, <, ==, !=, &&, ` 
عملکرد در بررسی چند مقدارمناسب برای مقایسه‌های پیچیدهبهتر برای بررسی مقدار متغیر در مقادیر ثابت
پشتیبانی از defaultاز else برای مقدار پیش‌فرض استفاده می‌شوداز default برای مقدار پیش‌فرض استفاده می‌شود

۳. کدام را انتخاب کنیم؟

  • اگر شرایط پیچیده با چندین مقایسه یا منطق ترکیبی وجود دارد، if-else انتخاب بهتری است.
  • اگر یک متغیر مشخص را فقط با مقدارهای ثابت مقایسه می‌کنید، switch خوانایی بیشتری دارد و سریع‌تر اجرا می‌شود.

مثال ترکیبی برای مقایسه

$value = 10;

if ($value > 5 && $value < 15) {
    echo "عدد بین 5 و 15 است.";
} else {
    echo "عدد خارج از این محدوده است.";
}

در چنین حالتی if-else انتخاب بهتری است، زیرا در switch امکان بررسی > 5 && < 15 وجود ندارد.


۴. نکته مهم درباره‌ی switch در PHP

switch در PHP فقط مقایسه‌ی مقداری (==) انجام می‌دهد و از مقایسه نوعی (===) پشتیبانی نمی‌کند. برای نمونه:

$var = "10"; // مقدار رشته‌ای

switch ($var) {
    case 10: // مقدار عددی
        echo "مقدار 10 تشخیص داده شد."; // اجرا می‌شود!
        break;
}

در این مثال، switch مقدار "10" (رشته) و 10 (عدد) را برابر در نظر می‌گیرد. اگر نیاز به مقایسه نوع داشته باشید، باید از if-else استفاده کنید.


۵. جمع‌بندی

  • برای مقایسه‌های ساده و سریع، switch بهتر است.
  • برای شرایط پیچیده و ترکیبی، if-else مناسب‌تر است.
  • switch از مقایسه == استفاده می‌کند، اما if-else می‌تواند با === نیز مقایسه کند.

پس انتخاب بستگی به نوع شرایط شما دارد!

آموزش کامل دستور شرطی if و else در PHP

در زبان برنامه‌نویسی PHP، دستورات شرطی برای اجرای بخش‌های خاصی از کد در شرایط مشخص استفاده می‌شوند.

ساختار if و else یکی از رایج‌ترین روش‌ها برای ایجاد شرط‌های منطقی در برنامه‌نویسی PHP است. در این مقاله، نحوه کار با if و else، انواع شرط‌ها و مثال‌های کاربردی را بررسی خواهیم کرد.


۱. دستور if در PHP

دستور if برای بررسی یک شرط استفاده می‌شود. اگر شرط برقرار باشد (یعنی مقدار آن true باشد)، کد داخل بلاک if اجرا می‌شود.

ساختار کلی دستور if در PHP

if (شرط) {
    // کدهایی که در صورت درست بودن شرط اجرا می‌شوند
}

مثال ساده از if در PHP

$age = 20;

if ($age >= 18) {
    echo "شما مجاز به ورود هستید.";
}

🔹 در این مثال، مقدار متغیر $age بررسی می‌شود. اگر مقدار آن ۱۸ یا بیشتر باشد، پیام "شما مجاز به ورود هستید." نمایش داده می‌شود.


۲. دستور if و else در PHP

اگر بخواهیم علاوه بر اجرای کد در صورت صحیح بودن شرط، یک کد جایگزین را هم در صورت نادرست بودن شرط اجرا کنیم، از else استفاده می‌کنیم.

ساختار کلی if و else در PHP

if (شرط) {
    // کدهایی که در صورت درست بودن شرط اجرا می‌شوند
} else {
    // کدهایی که در صورت غلط بودن شرط اجرا می‌شوند
}

مثال if و else در PHP

$age = 16;

if ($age >= 18) {
    echo "شما مجاز به ورود هستید.";
} else {
    echo "متأسفیم، شما مجاز به ورود نیستید.";
}

🔹 در این مثال، اگر مقدار $age ۱۸ یا بیشتر باشد، پیغام مجاز بودن نمایش داده می‌شود. در غیر این صورت، پیغام عدم اجازه ورود نمایش داده می‌شود.


۳. دستور if...elseif...else در PHP

اگر بخواهیم چندین شرط را بررسی کنیم، می‌توانیم از elseif استفاده کنیم. این دستور به ما امکان می‌دهد چندین حالت مختلف را در کد مشخص کنیم.

ساختار کلی if...elseif...else در PHP

if (شرط اول) {
    // اگر شرط اول برقرار باشد، این کد اجرا می‌شود
} elseif (شرط دوم) {
    // اگر شرط اول برقرار نبود ولی شرط دوم برقرار بود، این کد اجرا می‌شود
} else {
    // اگر هیچ‌کدام از شرایط بالا برقرار نبودند، این کد اجرا می‌شود
}

مثال if...elseif...else در PHP

$score = 75;

if ($score >= 90) {
    echo "نمره شما عالی است!";
} elseif ($score >= 70) {
    echo "نمره شما خوب است!";
} elseif ($score >= 50) {
    echo "نمره شما متوسط است.";
} else {
    echo "شما مردود شده‌اید.";
}

🔹 در این مثال، مقدار $score بررسی می‌شود و متناسب با مقدار آن، پیام مناسبی نمایش داده می‌شود.


۴. استفاده از if به‌صورت کوتاه (Ternary Operator)

در PHP، می‌توان از یک روش کوتاه‌تر و فشرده‌تر برای نوشتن شرط‌ها استفاده کرد که به آن عملگر سه‌تایی (Ternary Operator) گفته می‌شود.

ساختار کلی عملگر سه‌تایی

متغیر = (شرط) ? مقدار اگر شرط صحیح باشد : مقدار اگر شرط غلط باشد;

مثال استفاده از عملگر سه‌تایی

$age = 20;
$message = ($age >= 18) ? "مجاز به ورود هستید." : "مجاز به ورود نیستید.";
echo $message;

🔹 در این مثال، اگر مقدار $age ۱۸ یا بیشتر باشد، مقدار "مجاز به ورود هستید." درون متغیر $message ذخیره و نمایش داده می‌شود؛ در غیر این صورت، مقدار "مجاز به ورود نیستید." نمایش داده می‌شود.


۵. ترکیب شرط‌های منطقی در if

می‌توان چندین شرط را با استفاده از عملگرهای منطقی ترکیب کرد:

عملگرتوضیح
&&و (AND) – شرط فقط زمانی برقرار است که هر دو قسمت آن true باشند
` 
!نقیض (NOT) – مقدار شرط را معکوس می‌کند

مثال استفاده از عملگرهای منطقی در if

$username = "admin";
$password = "1234";

if ($username == "admin" && $password == "1234") {
    echo "ورود موفقیت‌آمیز بود.";
} else {
    echo "نام کاربری یا رمز عبور اشتباه است.";
}

🔹 در این مثال، اگر مقدار متغیرهای $username و $password هر دو درست باشند، پیام ورود موفق نمایش داده می‌شود. در غیر این صورت، پیام خطا نمایش داده می‌شود.


۶. نکات مهم درباره if و else در PHP

✅ شرط‌ها در PHP همیشه باید مقدار true یا false را ارزیابی کنند.
✅ مقدار 0، رشته خالی ""، مقدار null، و آرایه خالی [] همگی به‌عنوان false در نظر گرفته می‌شوند.
✅ استفاده از elseif باعث خوانایی بهتر کد نسبت به else if می‌شود.


۷. نتیجه‌گیری

در این آموزش، با ساختارهای شرطی if و else در PHP آشنا شدیم. از این دستورات برای کنترل جریان اجرای برنامه استفاده می‌شود و به ما کمک می‌کنند تا براساس شرایط مختلف، تصمیمات متفاوتی را در کد خود اعمال کنیم. همچنین با elseif، عملگر سه‌تایی و ترکیب شرط‌ها آشنا شدیم که قدرت بیشتری به کدهای ما می‌بخشند.

💡 پیشنهاد: برای تسلط بیشتر روی این موضوع، تمرین کنید و مثال‌های مختلفی را در PHP اجرا کنید. 😊

راهنمای کامل کامنت‌گذاری در PHP

کامنت‌گذاری در PHP روشی برای توضیح و مستندسازی کدها است که توسط مفسر نادیده گرفته می‌شود.

کامنت‌ها باعث می‌شوند که کدها خواناتر شوند، درک آن‌ها برای توسعه‌دهندگان راحت‌تر باشد و نگهداری و عیب‌یابی آسان‌تر شود.


۱. انواع کامنت در PHP

در PHP، سه روش اصلی برای کامنت‌گذاری وجود دارد:

  1. کامنت تک‌خطی با //
  2. کامنت تک‌خطی با #
  3. کامنت چندخطی با /* ... */

۱.۱. کامنت تک‌خطی (//)

این روش برای نوشتن توضیحات کوتاه و سریع در یک خط استفاده می‌شود.

🔹 مثال:

// این یک کامنت تک‌خطی است
echo "Hello, World!"; // این یک کامنت در انتهای خط است

۱.۲. کامنت تک‌خطی (#)

روش # نیز برای نوشتن کامنت‌های تک‌خطی استفاده می‌شود، اما کمتر از // رایج است.

🔹 مثال:

# این هم یک کامنت تک‌خطی است
echo "Hello, PHP!";

۱.۳. کامنت چندخطی (/* ... */)

از این روش برای نوشتن توضیحات طولانی یا مستندسازی بخش‌های مختلف کد استفاده می‌شود.

🔹 مثال:

/*
این یک کامنت چندخطی است
و می‌توان آن را در چندین خط نوشت
*/
echo "PHP is awesome!";

۲. کاربردهای کامنت در PHP

۲.۱. توضیح عملکرد کد

کامنت‌ها برای توضیح عملکرد توابع، کلاس‌ها و متغیرها استفاده می‌شوند تا فهمیدن آن‌ها راحت‌تر شود.

🔹 مثال:

// محاسبه مجموع دو عدد
function sum($a, $b) {
    return $a + $b;
}

۲.۲. غیرفعال کردن موقت کدها

گاهی اوقات ممکن است نیاز باشد بخشی از کد را موقتاً غیرفعال کنیم، که این کار با کامنت امکان‌پذیر است.

🔹 مثال:

// echo "این کد اجرا نمی‌شود";

۲.۳. مستندسازی کد با PHPDoc

PHPDoc یک استاندارد کامنت‌گذاری برای توصیف توابع، کلاس‌ها و متغیرها است که ابزارهای مستندسازی می‌توانند از آن استفاده کنند.

🔹 مثال:

/**
 * محاسبه مجموع دو عدد
 *
 * @param int $a عدد اول
 * @param int $b عدد دوم
 * @return int مجموع دو عدد
 */
function sum($a, $b) {
    return $a + $b;
}

۳. بهترین روش‌های کامنت‌نویسی در PHP

کامنت‌ها باید کوتاه و مفید باشند.
توضیح اضافه و غیرضروری ننویسید.
از کامنت‌های چندخطی برای توضیحات طولانی استفاده کنید.
از PHPDoc برای مستندسازی توابع و کلاس‌ها استفاده کنید.
کامنت‌گذاری را مرتب و خوانا نگه دارید.


۴. نتیجه‌گیری

  • در PHP سه نوع کامنت وجود دارد: //، # و /* ... */
  • کامنت‌ها برای مستندسازی، افزایش خوانایی، غیرفعال‌سازی کد و کمک به دیباگ استفاده می‌شوند.
  • استفاده از PHPDoc برای توصیف توابع و کلاس‌ها، نگهداری کد را آسان‌تر می‌کند.

🚀 کامنت‌گذاری صحیح باعث می‌شود کد شما خواناتر، حرفه‌ای‌تر و قابل نگهداری‌تر باشد.

نحوه تعریف و استفاده از ثابت‌ها در PHP

در PHP، ثابت‌ها (Constants) متغیرهایی هستند که مقدارشان در طول اجرای برنامه تغییر نمی‌کند.

ثابت‌ها برای نگه‌داری مقادیری که نیاز به تغییر ندارند، مانند نام سایت، نسخه نرم‌افزار، مقادیر عددی خاص و… استفاده می‌شوند.


۱. نحوه تعریف ثابت‌ها در PHP

در PHP، دو روش اصلی برای تعریف ثابت‌ها وجود دارد:

  • استفاده از تابع define()
  • استفاده از کلمه کلیدی const

الف) تعریف ثابت با define()

تابع define() برای تعریف یک ثابت استفاده می‌شود. این تابع دو آرگومان اصلی دارد:

  1. نام ثابت (به صورت رشته)
  2. مقدار ثابت

مثال:

define("SITE_NAME", "MyWebsite");
define("VERSION", 1.2);
define("IS_ACTIVE", true);

📌 نکات مهم:

  • نام ثابت‌ها به‌صورت پیش‌فرض حساس به حروف بزرگ و کوچک هستند.
  • مقدار ثابت می‌تواند عدد، رشته، بولین، آرایه (از PHP 7.0 به بعد) باشد.

ب) تعریف ثابت با const

کلمه کلیدی const برای تعریف ثابت‌ها استفاده می‌شود. برخلاف define()، این روش فقط برای مقدارهای اسکالر (عدد، رشته، بولین) قابل استفاده است.

مثال:

const SITE_URL = "https://example.com";
const MAX_USERS = 100;
const IS_LOGGED_IN = false;

📌 تفاوت‌های define() و const:

ویژگیdefine()const
قابل استفاده در بدنه شرطی (if و loop)✅ بله❌ خیر
مقدارهای آرایه‌ای پشتیبانی می‌شود؟✅ (از PHP 7.0)❌ خیر
کار در داخل کلاس‌ها❌ خیر✅ بله

۲. نحوه استفاده از ثابت‌ها

پس از تعریف یک ثابت، می‌توان در هر بخش از کد PHP بدون علامت $ به آن دسترسی داشت.

الف) دسترسی مستقیم به ثابت‌ها

echo SITE_NAME; // خروجی: MyWebsite
echo "نسخه: " . VERSION; // خروجی: نسخه: 1.2

ب) استفاده در شرط‌ها و توابع

if (IS_ACTIVE) {
    echo "سیستم فعال است.";
}

function getSiteUrl() {
    return SITE_URL;
}

echo getSiteUrl(); // خروجی: https://example.com

ج) تعریف ثابت در کلاس‌ها

class Config {
    const DB_HOST = "localhost";
    const DB_USER = "root";
    const DB_PASS = "123456";
}

echo Config::DB_HOST; // خروجی: localhost

۳. بررسی ثابت‌ها

PHP توابعی برای بررسی و کار با ثابت‌ها ارائه داده است:

بررسی اینکه یک ثابت تعریف شده یا نه

if (defined("SITE_NAME")) {
    echo "ثابت SITE_NAME تعریف شده است.";
} else {
    echo "ثابت تعریف نشده!";
}

نتیجه‌گیری

  • ثابت‌ها در PHP متغیرهایی با مقدار ثابت و غیرقابل تغییر هستند.
  • دو روش برای تعریف ثابت وجود دارد: define() و const.
  • ثابت‌ها بدون $ فراخوانی می‌شوند.
  • define() برای مقدارهای مختلف کاربرد دارد، اما const فقط در سطح کلاس و برای مقادیر اسکالر قابل استفاده است.
  • از defined() می‌توان برای بررسی وجود یک ثابت استفاده کرد.

با استفاده از ثابت‌ها، کدهای پایدارتر، خواناتر و قابل مدیریت‌تر خواهند شد. 🚀

آشنایی با آرایه‌ها در PHP

آرایه‌ها در PHP یکی از مهم‌ترین و پرکاربردترین ساختارهای داده‌ای هستند که به شما این امکان را می‌دهند چندین مقدار را در یک متغیر ذخیره کنید.

برخلاف متغیرهای معمولی که فقط یک مقدار را نگه می‌دارند، آرایه‌ها می‌توانند مجموعه‌ای از داده‌ها را مدیریت کنند.

PHP از سه نوع آرایه پشتیبانی می‌کند:

  1. آرایه‌های عددی (Indexed Array) – دارای اندیس عددی
  2. آرایه‌های انجمنی (Associative Array) – دارای کلیدهای متنی
  3. آرایه‌های چندبعدی (Multidimensional Array) – آرایه‌های تو در تو

در این مقاله، نحوه تعریف، مقداردهی، و استفاده از آرایه‌ها در PHP را همراه با مثال بررسی خواهیم کرد.


۱. تعریف آرایه در PHP

در PHP، یک آرایه را می‌توان به دو روش زیر تعریف کرد:

  • استفاده از تابع array()
  • استفاده از علامت [] (از PHP 5.4 به بعد)

مثال از تعریف آرایه

<?php
    // روش قدیمی
    $fruits = array("سیب", "موز", "پرتقال");

    // روش جدید (ترجیح داده‌شده)
    $fruits = ["سیب", "موز", "پرتقال"];
?>

۲. انواع آرایه‌ها در PHP

۲.۱ آرایه‌های عددی (Indexed Arrays)

در آرایه‌های عددی، مقادیر با اندیس عددی (۰، ۱، ۲، …) مشخص می‌شوند.

تعریف آرایه عددی

<?php
    $colors = ["قرمز", "سبز", "آبی"];

    echo $colors[0]; // خروجی: قرمز
    echo $colors[1]; // خروجی: سبز
?>

اضافه کردن مقدار جدید به آرایه

<?php
    $colors[] = "زرد"; // مقدار جدید به انتهای آرایه اضافه شد
?>

حلقه for برای پیمایش آرایه

<?php
    $colors = ["قرمز", "سبز", "آبی"];

    for ($i = 0; $i < count($colors); $i++) {
        echo $colors[$i] . "<br>";
    }
?>

۲.۲ آرایه‌های انجمنی (Associative Arrays)

در این نوع آرایه، به جای اندیس عددی، از کلیدهای متنی برای مقداردهی استفاده می‌شود.

تعریف آرایه انجمنی

<?php
    $person = [
        "نام" => "علی",
        "سن" => 25,
        "شغل" => "برنامه‌نویس"
    ];

    echo $person["نام"]; // خروجی: علی
?>

اضافه کردن مقدار جدید

<?php
    $person["شهر"] = "تهران";
?>

حلقه foreach برای پیمایش آرایه انجمنی

<?php
    foreach ($person as $key => $value) {
        echo "$key: $value <br>";
    }
?>

۲.۳ آرایه‌های چندبعدی (Multidimensional Arrays)

آرایه چندبعدی، آرایه‌ای درون آرایه دیگر است و برای مدیریت داده‌های پیچیده‌تر استفاده می‌شود.

تعریف آرایه چندبعدی

<?php
    $students = [
        ["علی", 20, "مهندسی نرم‌افزار"],
        ["زهرا", 22, "پزشکی"],
        ["محمد", 19, "معماری"]
    ];

    echo $students[0][0]; // خروجی: علی
    echo $students[1][2]; // خروجی: پزشکی
?>

پیمایش آرایه چندبعدی

<?php
    foreach ($students as $student) {
        echo "نام: $student[0] - سن: $student[1] - رشته: $student[2] <br>";
    }
?>

۳. توابع مهم برای کار با آرایه‌ها در PHP

PHP مجموعه‌ای از توابع داخلی برای کار با آرایه‌ها ارائه می‌دهد. در اینجا برخی از مهم‌ترین آن‌ها را بررسی می‌کنیم.

۳.۱ شمارش تعداد عناصر (count())

<?php
    $fruits = ["سیب", "موز", "پرتقال"];
    echo count($fruits); // خروجی: 3
?>

۳.۲ بررسی وجود یک مقدار در آرایه (in_array())

<?php
    if (in_array("موز", $fruits)) {
        echo "موز در آرایه وجود دارد!";
    }
?>

۳.۳ اضافه کردن مقدار به انتهای آرایه (array_push())

<?php
    array_push($fruits, "گیلاس");
?>

۳.۴ حذف مقدار از انتهای آرایه (array_pop())

<?php
    array_pop($fruits); // مقدار آخر حذف می‌شود
?>

۳.۵ حذف مقدار از ابتدای آرایه (array_shift())

<?php
    array_shift($fruits); // مقدار اول حذف می‌شود
?>

۳.۶ مرتب‌سازی آرایه (sort() و rsort())

<?php
    sort($fruits);  // مرتب‌سازی صعودی
    rsort($fruits); // مرتب‌سازی نزولی
?>

۳.۷ تبدیل آرایه به رشته (implode())

<?php
    $text = implode(", ", $fruits);
    echo $text; // خروجی: سیب, موز, پرتقال
?>

۳.۸ تبدیل رشته به آرایه (explode())

<?php
    $str = "قرمز, سبز, آبی";
    $colors = explode(", ", $str);
?>

۳.۹ فیلتر کردن مقادیر آرایه (array_filter())

<?php
    $numbers = [10, 20, 30, 40, 50];

    $filtered = array_filter($numbers, function($num) {
        return $num > 25;
    });

    print_r($filtered); // خروجی: [30, 40, 50]
?>

۳.۱۰ تبدیل کلیدها و مقادیر (array_keys() و array_values())

<?php
    $person = ["نام" => "علی", "سن" => 25, "شغل" => "برنامه‌نویس"];

    print_r(array_keys($person));  // خروجی: [نام، سن، شغل]
    print_r(array_values($person)); // خروجی: [علی، 25، برنامه‌نویس]
?>

نتیجه‌گیری

🔹 آرایه‌ها در PHP یکی از بهترین ابزارها برای مدیریت مجموعه‌ای از داده‌ها هستند.
🔹 آرایه‌ها می‌توانند عدد‌ی، انجمنی یا چندبعدی باشند.
🔹 PHP توابع قدرتمندی مانند count(), sort(), implode(), explode(), array_push() و غیره برای مدیریت آرایه‌ها ارائه می‌دهد.
🔹 استفاده از حلقه‌های for و foreach برای پیمایش آرایه‌ها ضروری است.

با یادگیری و استفاده از آرایه‌ها، می‌توانید کدهای بهینه‌تر و کارآمدتری بنویسید! 🚀

راهنمای جامع عملگرهای انتساب در PHP

عملگرهای انتساب (Assignment Operators) در PHP برای مقداردهی به متغیرها استفاده می‌شوند.

علاوه بر مقداردهی ساده (=)، PHP عملگرهایی مانند +=، -=، *=، /=، %= را ارائه می‌دهد که ترکیبی از انتساب و عملیات ریاضی هستند. این عملگرها باعث خوانایی بیشتر کد، کاهش کدنویسی اضافی و بهینه‌تر شدن عملکرد برنامه می‌شوند.


۱. انواع عملگرهای انتساب در PHP

PHP دارای چندین نوع عملگر انتساب است که هرکدام کاربرد خاصی دارند.

عملگرتوضیحمثالمعادل با
=مقداردهی ساده$x = 10;مقدار 10 به $x اختصاص داده می‌شود
+=جمع و انتساب$x += 5;$x = $x + 5;
-=تفریق و انتساب$x -= 5;$x = $x - 5;
*=ضرب و انتساب$x *= 5;$x = $x * 5;
/=تقسیم و انتساب$x /= 5;$x = $x / 5;
%=باقی‌مانده و انتساب$x %= 5;$x = $x % 5;
**=توان و انتساب$x **= 2;$x = $x ** 2;
.=الحاق رشته و انتساب$str .= "PHP";$str = $str . "PHP";

۲. بررسی دقیق عملگرهای انتساب

۲.۱ عملگر = (انتساب مقدار)

عملگر = مقدار یک متغیر را تعیین می‌کند.

<?php
    $x = 10;
    echo $x; // خروجی: 10
?>

نکته: = یک عملگر انتساب است، نه مقایسه‌ای.
برای بررسی برابری مقدار از == استفاده کنید.


۲.۲ عملگر += (جمع و انتساب)

این عملگر مقدار متغیر را افزایش می‌دهد.

<?php
    $x = 10;
    $x += 5; // معادل $x = $x + 5;
    echo $x; // خروجی: 15
?>

۲.۳ عملگر -= (تفریق و انتساب)

این عملگر مقدار متغیر را کاهش می‌دهد.

<?php
    $x = 20;
    $x -= 7; // معادل $x = $x - 7;
    echo $x; // خروجی: 13
?>

۲.۴ عملگر *= (ضرب و انتساب)

این عملگر مقدار متغیر را در یک عدد ضرب می‌کند.

<?php
    $x = 4;
    $x *= 3; // معادل $x = $x * 3;
    echo $x; // خروجی: 12
?>

۲.۵ عملگر /= (تقسیم و انتساب)

این عملگر مقدار متغیر را بر عددی تقسیم می‌کند.

<?php
    $x = 20;
    $x /= 4; // معادل $x = $x / 4;
    echo $x; // خروجی: 5
?>

نکته: مقدار حاصل ممکن است عدد اعشاری باشد.


۲.۶ عملگر %= (باقی‌مانده و انتساب)

این عملگر باقی‌مانده تقسیم مقدار متغیر را تعیین می‌کند.

<?php
    $x = 17;
    $x %= 5; // معادل $x = $x % 5;
    echo $x; // خروجی: 2
?>

۲.۷ عملگر **= (توان و انتساب)

این عملگر مقدار متغیر را به توان عدد مشخص‌شده می‌رساند.

<?php
    $x = 3;
    $x **= 2; // معادل $x = $x ** 2;
    echo $x; // خروجی: 9
?>

۲.۸ عملگر .= (الحاق رشته و انتساب)

این عملگر برای اتصال (Concatenation) دو رشته استفاده می‌شود.

<?php
    $text = "سلام";
    $text .= " به PHP خوش آمدید!"; // معادل $text = $text . " به PHP خوش آمدید!";
    echo $text;
?>

خروجی:

سلام به PHP خوش آمدید!

۳. ترکیب عملگرهای انتساب در شرط‌ها

۳.۱ بررسی شرط با if و عملگرهای انتساب

<?php
    $points = 50;
    $points += 20;

    if ($points >= 60) {
        echo "شما قبول شدید!";
    } else {
        echo "متاسفم، امتیاز شما کافی نیست.";
    }
?>

✅ اگر مقدار $points ۶۰ یا بیشتر باشد، پیام “شما قبول شدید!” نمایش داده می‌شود.


۳.۲ استفاده از عملگر .= برای ایجاد پیام پویا

<?php
    $message = "امتیاز شما: ";
    $score = 85;
    $message .= $score; // ترکیب مقدار عددی با رشته

    echo $message;
?>

خروجی:

امتیاز شما: 85

۴. تفاوت بین = و == و ===

گاهی اوقات اشتباه گرفتن = با == و === می‌تواند مشکلاتی ایجاد کند.

عملگرتوضیحمثالخروجی
=انتساب مقدار$x = 10;مقدار 10 به $x اختصاص داده می‌شود
==بررسی برابری مقدار10 == "10"true (چون مقدارها برابرند)
===بررسی برابری مقدار و نوع10 === "10"false (چون نوع داده متفاوت است)

مثال از تفاوت = و ==

<?php
    $x = 5;
    
    if ($x = 10) {  // اشتباه: اینجا مقدار 10 به $x داده می‌شود و شرط همیشه true است!
        echo "شرط برقرار است!";
    }
?>

راه‌حل: همیشه برای مقایسه مقدارها از == یا === استفاده کنید.


۵. بهترین شیوه‌های استفاده از عملگرهای انتساب

از +=، -=، *= و /= برای بهینه‌سازی کد استفاده کنید.
در مقایسه مقدارها، = را با == و === اشتباه نگیرید.
برای متغیرهای رشته‌ای، از .= برای الحاق متن استفاده کنید.
در شرط‌های پیچیده، از پرانتز برای خوانایی بهتر کد استفاده کنید.


نتیجه‌گیری

عملگرهای انتساب در PHP به شما امکان می‌دهند که مقادیر را مقداردهی، تغییر و ترکیب کنید.
🔹 +=, -=, *=, /= و %= برای عملیات ریاضی بهینه استفاده می‌شوند.
🔹 **= برای توان‌گیری متغیر کاربرد دارد.
🔹 .= برای الحاق رشته‌ها استفاده می‌شود.
🔹 تفاوت = و == را در نظر بگیرید تا از خطاهای رایج جلوگیری کنید.

✅ با استفاده از این عملگرها، می‌توانید کدنویسی بهینه‌تر، سریع‌تر و خواناتر داشته باشید! 🚀

راهنمای جامع عملگرهای منطقی در PHP

عملگرهای منطقی (Logical Operators) در PHP برای ترکیب شرط‌ها و تصمیم‌گیری در برنامه استفاده می‌شوند.

این عملگرها معمولاً در دستورات شرطی (if)، حلقه‌ها (while، for) و بررسی صحت مقادیر کاربرد دارند.

در این مقاله، انواع عملگرهای منطقی در PHP را معرفی کرده و با ارائه مثال‌های کاربردی، نحوه استفاده از آن‌ها را بررسی می‌کنیم.


۱. معرفی عملگرهای منطقی در PHP

PHP دارای ۵ عملگر منطقی اصلی است:

عملگرنامتوضیحمثال
&& یا andو (AND)مقدار true را فقط زمانی برمی‌گرداند که هر دو شرط درست باشند.(true && true) => true
` یاor`یا (OR)
!نقیض (NOT)مقدار را برعکس می‌کند، اگر مقدار true باشد، آن را به false تبدیل می‌کند و برعکس.(!true) => false
xorیا انحصاری (XOR)مقدار true را فقط زمانی برمی‌گرداند که یکی از شرط‌ها درست باشد، اما نه هر دو.(true xor false) => true
and, orنسخه‌های متنی AND و ORاولویت اجرای پایین‌تری نسبت به && و ` 

نکته: عملگرهای && و || دارای اولویت بالاتری نسبت به and و or هستند.


۲. بررسی دقیق عملگرهای منطقی

۲.۱ عملگر && و and (و – AND)

این عملگر مقدار true را فقط در صورتی برمی‌گرداند که هر دو شرط درست باشند.

<?php
    $age = 25;
    $is_student = true;

    if ($age > 18 && $is_student) {
        echo "شما مجاز به دریافت تخفیف دانشجویی هستید.";
    }
?>

✅ اگر هر دو شرط ($age > 18 و $is_student) درست باشند، پیام نمایش داده می‌شود.
❌ اگر یکی از شرط‌ها نادرست باشد، شرط برقرار نمی‌شود.


۲.۲ عملگر || و or (یا – OR)

این عملگر مقدار true را زمانی برمی‌گرداند که حداقل یکی از شرط‌ها درست باشد.

<?php
    $age = 17;
    $has_permission = false;

    if ($age >= 18 || $has_permission) {
        echo "شما مجاز به ورود هستید.";
    } else {
        echo "ورود شما مجاز نیست.";
    }
?>

اگر یکی از شرط‌ها درست باشد، شرط برقرار می‌شود.
اگر هر دو شرط نادرست باشند، شرط برقرار نمی‌شود.


۲.۳ عملگر ! (نقیض – NOT)

این عملگر مقدار را برعکس می‌کند:

  • اگر مقدار true باشد، آن را false می‌کند.
  • اگر مقدار false باشد، آن را true می‌کند.
<?php
    $is_logged_in = false;

    if (!$is_logged_in) {
        echo "لطفاً ابتدا وارد حساب خود شوید.";
    }
?>

✅ در این مثال، چون $is_logged_in = false است، !false مقدار true برمی‌گرداند و شرط اجرا می‌شود.


۲.۴ عملگر xor (یا انحصاری – XOR)

این عملگر مقدار true را فقط زمانی برمی‌گرداند که یکی از شرط‌ها درست باشد، اما نه هر دو.

<?php
    $a = true;
    $b = false;

    if ($a xor $b) {
        echo "یکی از متغیرها true است، اما نه هر دو.";
    }
?>

جدول نتایج عملگر xor:

شرط اولشرط دومنتیجه (xor)
truetruefalse
truefalsetrue
falsetruetrue
falsefalsefalse

۲.۵ تفاوت && با and و || با or

&& و || دارای اولویت بالاتری نسبت به and و or هستند.
❌ اگر از and یا or در عبارات پیچیده استفاده کنید، ممکن است نتایج غیرمنتظره بگیرید.

<?php
    $result1 = true && false;
    $result2 = true and false;

    var_dump($result1); // false
    var_dump($result2); // true (چون اولویت and کمتر است و مقدار true به $result2 انتساب داده شده)
?>

نتیجه:

  • && اولویت بالاتری دارد و ابتدا شرط ارزیابی می‌شود.
  • and اولویت کمتری دارد و مقدار true ابتدا به $result2 اختصاص داده می‌شود.

پس همیشه از && و || در شرایط منطقی استفاده کنید.


۳. ترکیب عملگرهای منطقی در شرط‌های پیچیده

۳.۱ استفاده از پرانتز برای افزایش خوانایی

در شرایط پیچیده، بهتر است از پرانتز برای کنترل اولویت اجرای شرط‌ها استفاده کنید.

<?php
    $age = 20;
    $has_id = true;
    $is_vip = false;

    if (($age >= 18 && $has_id) || $is_vip) {
        echo "ورود مجاز است.";
    }
?>

✅ اگر کاربر بالای ۱۸ سال باشد و مدرک شناسایی داشته باشد یا VIP باشد، اجازه ورود دارد.


۳.۲ ترکیب ! با سایر عملگرها

<?php
    $is_admin = false;
    $is_logged_in = true;

    if ($is_logged_in && !$is_admin) {
        echo "شما وارد شده‌اید، اما مدیر نیستید.";
    }
?>

✅ اگر کاربر وارد شده باشد اما مدیر نباشد، پیام نمایش داده می‌شود.


۴. استفاده از عملگرهای منطقی در حلقه‌ها

عملگرهای منطقی در حلقه‌های while و for نیز به کار می‌روند.

مثال در while

<?php
    $number = 1;

    while ($number <= 10 && $number % 2 == 0) {
        echo $number . "<br>";
        $number++;
    }
?>

✅ فقط اعداد زوج کوچکتر یا مساوی ۱۰ چاپ می‌شوند.


نتیجه‌گیری

✅ عملگرهای منطقی برای ترکیب شرط‌ها و تصمیم‌گیری‌های پیچیده استفاده می‌شوند.
✅ همیشه از && و || به‌جای and و or استفاده کنید.
✅ در شرایط پیچیده، از پرانتز برای افزایش خوانایی و کنترل اولویت اجرا استفاده کنید.
عملگر xor را زمانی استفاده کنید که فقط یکی از شرط‌ها باید درست باشد، اما نه هر دو.

با یادگیری این عملگرها، می‌توانید شرط‌های پیشرفته و کدهای بهینه‌تری در PHP بنویسید! 🚀

راهنمای جامع عملگرهای مقایسه‌ای در PHP

عملگرهای مقایسه‌ای (Comparison Operators) در PHP برای مقایسه مقادیر و تعیین روابط بین آن‌ها استفاده می‌شوند.

این عملگرها معمولاً در شرط‌ها (if)، حلقه‌ها (while, for) و تصمیم‌گیری‌های منطقی کاربرد دارند. در این مقاله، انواع عملگرهای مقایسه‌ای در PHP را بررسی کرده و نحوه استفاده از آن‌ها را با مثال توضیح می‌دهیم.


۱. لیست عملگرهای مقایسه‌ای در PHP

عملگرهای مقایسه‌ای در PHP شامل موارد زیر هستند:

عملگرنامتوضیحمثالخروجی
==برابربررسی می‌کند که مقدار دو متغیر برابر باشد.10 == "10"true
===همسان (برابر و هم‌نوع)بررسی می‌کند که مقدار و نوع داده یکسان باشند.10 === "10"false
!= یا <>نابرابربررسی می‌کند که مقدار دو متغیر مساوی نباشد.10 != 5true
!==نابرابر از نظر مقدار و نوعبررسی می‌کند که مقدار یا نوع داده متفاوت باشد.10 !== "10"true
>بزرگتربررسی می‌کند که مقدار سمت چپ از مقدار سمت راست بزرگ‌تر باشد.10 > 5true
<کوچکتربررسی می‌کند که مقدار سمت چپ از مقدار سمت راست کوچک‌تر باشد.5 < 10true
>=بزرگتر یا مساویبررسی می‌کند که مقدار سمت چپ بزرگ‌تر یا مساوی مقدار سمت راست باشد.10 >= 10true
<=کوچکتر یا مساویبررسی می‌کند که مقدار سمت چپ کوچک‌تر یا مساوی مقدار سمت راست باشد.5 <= 10true
<=>عملگر سه‌تایی (Spaceship)اگر مقدار اول کوچک‌تر باشد -1، اگر برابر باشد 0، اگر بزرگ‌تر باشد 1 برمی‌گرداند.10 <=> 51

۲. بررسی دقیق هر عملگر مقایسه‌ای

۲.۱ عملگر == (بررسی برابری مقدار)

این عملگر بررسی می‌کند که مقدار دو متغیر مساوی باشد، حتی اگر نوع داده آن‌ها متفاوت باشد.

<?php
    $a = 10;
    $b = "10";

    var_dump($a == $b); // true (چون مقدارشان برابر است)
?>

نکته: PHP به‌صورت خودکار نوع داده را تبدیل می‌کند تا بتواند مقایسه را انجام دهد.


۲.۲ عملگر === (بررسی برابری مقدار و نوع)

این عملگر بررسی می‌کند که هم مقدار و هم نوع داده یکسان باشند.

<?php
    $a = 10;
    $b = "10";

    var_dump($a === $b); // false (چون مقدار برابر است، اما نوع داده فرق دارد)
?>

نکته: در بسیاری از موارد، استفاده از === نسبت به == امن‌تر است، زیرا از مشکلات تبدیل خودکار نوع داده جلوگیری می‌کند.


۲.۳ عملگر != و <> (بررسی نابرابری مقدار)

این عملگر بررسی می‌کند که مقدار دو متغیر مساوی نباشد.

<?php
    $a = 10;
    $b = 5;

    var_dump($a != $b); // true (چون مقدارها برابر نیستند)
    var_dump($a <> $b); // true (معادل !=)
?>

۲.۴ عملگر !== (بررسی نابرابری مقدار و نوع)

این عملگر بررسی می‌کند که مقدار یا نوع داده متغیرها متفاوت باشد.

<?php
    $a = 10;
    $b = "10";

    var_dump($a !== $b); // true (چون نوع داده‌ها متفاوت است)
?>

۲.۵ عملگرهای > و < (بررسی بزرگتر یا کوچکتر بودن)

<?php
    var_dump(10 > 5); // true
    var_dump(10 < 5); // false
?>

۲.۶ عملگرهای >= و <= (بررسی بزرگتر/کوچکتر یا مساوی)

<?php
    var_dump(10 >= 10); // true
    var_dump(5 <= 10); // true
?>

۲.۷ عملگر <=> (عملگر Spaceship)

عملگر <=> مقدار -1، 0 یا 1 را برمی‌گرداند:

مقایسهنتیجه (<=>)
10 <=> 51 (چون 10 بزرگ‌تر است)
10 <=> 100 (چون برابرند)
5 <=> 10-1 (چون 5 کوچک‌تر است)
<?php
    echo 10 <=> 5; // خروجی: 1
    echo 10 <=> 10; // خروجی: 0
    echo 5 <=> 10; // خروجی: -1
?>

۳. کاربرد عملگرهای مقایسه‌ای در شرط‌ها

مثال: بررسی شرط با if

<?php
    $age = 18;

    if ($age >= 18) {
        echo "شما مجاز به ورود هستید.";
    } else {
        echo "ورود شما مجاز نیست.";
    }
?>

مثال: استفاده در switch

<?php
    $number = 10;

    switch (true) {
        case ($number > 10):
            echo "عدد بزرگتر از 10 است.";
            break;
        case ($number == 10):
            echo "عدد برابر 10 است.";
            break;
        default:
            echo "عدد کوچکتر از 10 است.";
    }
?>

۴. مقایسه مقدارهای خاص

۴.۱ مقایسه مقدار NULL

<?php
    $x = NULL;
    var_dump($x == NULL); // true
?>

۴.۲ مقایسه مقدار true و false

<?php
    var_dump(true == 1); // true
    var_dump(false == 0); // true
    var_dump(false === 0); // false (چون نوع داده متفاوت است)
?>

نتیجه‌گیری

عملگرهای مقایسه‌ای در PHP ابزارهای ضروری برای تصمیم‌گیری و کنترل جریان برنامه هستند.
نکات کلیدی:

  • == مقدارها را بدون توجه به نوع مقایسه می‌کند.
  • === مقدار و نوع داده را بررسی می‌کند.
  • != و !== برای بررسی نابرابری استفاده می‌شوند.
  • >، <، >=، <= برای مقایسه اعداد به کار می‌روند.
  • <=> (عملگر spaceship) مقدار -1، 0 یا 1 را برمی‌گرداند.

با یادگیری و استفاده صحیح از این عملگرها، می‌توانید شرط‌های بهینه‌تر و کدهای مطمئن‌تری بنویسید! 🚀

راهنمای جامع عملگرها در PHP

عملگرها (Operators) در PHP نمادهایی هستند که برای انجام عملیات ریاضی، مقایسه‌ای، منطقی، انتسابی و بیتی روی مقادیر و متغیرها استفاده می‌شوند.

در این مقاله، تمامی عملگرهای PHP را بررسی کرده و نحوه استفاده از آن‌ها را با مثال توضیح خواهیم داد.


۱. انواع عملگرها در PHP

عملگرهای PHP به دسته‌های زیر تقسیم می‌شوند:

نوع عملگرتوضیح
عملگرهای ریاضی (Arithmetic Operators)برای انجام عملیات محاسباتی مانند جمع، تفریق، ضرب و تقسیم
عملگرهای انتساب (Assignment Operators)برای مقداردهی و ترکیب مقدارها
عملگرهای مقایسه‌ای (Comparison Operators)برای مقایسه دو مقدار
عملگرهای منطقی (Logical Operators)برای اجرای عملیات منطقی
عملگرهای بیتی (Bitwise Operators)برای عملیات روی سطح بیتی
عملگرهای افزایش و کاهش (Increment / Decrement Operators)برای افزایش یا کاهش مقدار عددی
عملگرهای رشته‌ای (String Operators)برای کار با رشته‌ها
عملگرهای آرایه‌ای (Array Operators)برای مقایسه آرایه‌ها
عملگرهای کنترل خطا (Error Control Operators)برای مدیریت خطاها

در ادامه هر یک از این عملگرها را به همراه مثال بررسی خواهیم کرد.


۲. عملگرهای ریاضی در PHP

عملگرهای ریاضی برای انجام عملیات جمع، تفریق، ضرب، تقسیم و سایر محاسبات عددی استفاده می‌شوند.

عملگرتوضیحمثالخروجی
+جمع10 + 515
-تفریق10 - 55
*ضرب10 * 550
/تقسیم10 / 52
%باقی‌مانده تقسیم10 % 31
**توان2 ** 38

مثال از عملگرهای ریاضی

<?php
    $a = 10;
    $b = 3;

    echo "جمع: " . ($a + $b) . "<br>";  // 13
    echo "تفریق: " . ($a - $b) . "<br>"; // 7
    echo "ضرب: " . ($a * $b) . "<br>"; // 30
    echo "تقسیم: " . ($a / $b) . "<br>"; // 3.3333
    echo "باقی‌مانده: " . ($a % $b) . "<br>"; // 1
    echo "توان: " . ($a ** 2) . "<br>"; // 100
?>

۳. عملگرهای انتساب در PHP

عملگرهای انتساب برای مقداردهی به متغیرها استفاده می‌شوند.

عملگرتوضیحمثالمعادل
=مقداردهی$x = 10;مقدار ۱۰ به $x اختصاص داده می‌شود
+=جمع و انتساب$x += 5;$x = $x + 5;
-=تفریق و انتساب$x -= 5;$x = $x - 5;
*=ضرب و انتساب$x *= 5;$x = $x * 5;
/=تقسیم و انتساب$x /= 5;$x = $x / 5;
%=باقی‌مانده و انتساب$x %= 5;$x = $x % 5;

مثال از عملگرهای انتساب

<?php
    $x = 10;
    $x += 5; // معادل $x = $x + 5
    echo $x; // 15
?>

۴. عملگرهای مقایسه‌ای در PHP

این عملگرها برای مقایسه دو مقدار استفاده می‌شوند و معمولاً در شرط‌ها به کار می‌روند.

عملگرتوضیحمثالخروجی
==بررسی برابری مقدار10 == "10"true
===بررسی برابری مقدار و نوع10 === "10"false
!= یا <>بررسی نابرابری مقدار10 != 5true
!==بررسی نابرابری مقدار و نوع10 !== "10"true
>بزرگتر بودن10 > 5true
<کوچکتر بودن5 < 10true
>=بزرگتر یا مساوی10 >= 10true
<=کوچکتر یا مساوی5 <= 10true

مثال از عملگرهای مقایسه‌ای

<?php
    $a = 10;
    $b = "10";

    var_dump($a == $b);  // true
    var_dump($a === $b); // false
    var_dump($a != $b);  // false
    var_dump($a !== $b); // true
?>

۵. عملگرهای منطقی در PHP

این عملگرها برای ترکیب شرط‌ها در دستورات if و while استفاده می‌شوند.

عملگرتوضیحمثالخروجی
&& یا andوtrue && falsefalse
` یاor`یا
!نقیض!truefalse

مثال از عملگرهای منطقی

<?php
    $age = 25;
    $is_student = true;

    if ($age > 18 && $is_student) {
        echo "شما مجاز هستید.";
    }
?>

۶. عملگرهای افزایش و کاهش در PHP

عملگرتوضیحمثال
++$xافزایش قبل از استفاده$x = 5; echo ++$x; // 6
$x++افزایش بعد از استفاده$x = 5; echo $x++; // 5
--$xکاهش قبل از استفاده$x = 5; echo --$x; // 4
$x--کاهش بعد از استفاده$x = 5; echo $x--; // 5

نتیجه‌گیری

در این مقاله، تمامی عملگرهای مهم PHP شامل ریاضی، مقایسه‌ای، منطقی، انتسابی، افزایش و کاهش، رشته‌ای و بیتی را بررسی کردیم. دانستن این مفاهیم به شما کمک می‌کند تا کدهای بهینه و کارآمدتری بنویسید. 🚀

راهنمای جامع کار با رشته‌ها در PHP

رشته‌ها (Strings) در PHP مجموعه‌ای از کاراکترها هستند که برای ذخیره و پردازش متن استفاده می‌شوند.

PHP دارای مجموعه‌ای قدرتمند از توابع داخلی برای کار با رشته‌ها است که شامل اتصال، برش، جستجو، جایگزینی، قالب‌بندی و تبدیل متن می‌شود. در این راهنما، نحوه تعریف و مدیریت رشته‌ها در PHP را با مثال‌های کاربردی بررسی خواهیم کرد.


۱. تعریف رشته در PHP

در PHP، رشته‌ها می‌توانند با استفاده از علامت‌های نقل‌قول تکی (') یا نقل‌قول دوتایی (") تعریف شوند.

مثال از تعریف رشته‌ها

<?php
    $string1 = "سلام، خوش آمدید!";
    $string2 = 'این یک رشته است.';
    
    echo $string1;
    echo "<br>";
    echo $string2;
?>

تفاوت بین "" و '' در PHP

  • در نقل‌قول دوتایی (")، متغیرهای داخل رشته تفسیر و مقدار آن‌ها جایگزین می‌شود.
  • در نقل‌قول تکی (')، متغیرها به‌عنوان متن ساده در نظر گرفته می‌شوند.

مثال تفاوت " " و ' '

<?php
    $name = "علی";

    echo "نام من $name است."; // خروجی: نام من علی است.
    echo '<br>';
    echo 'نام من $name است.'; // خروجی: نام من $name است.
?>

۲. الحاق (اتصال) رشته‌ها

برای ترکیب دو یا چند رشته در PHP از عملگر . (نقطه) استفاده می‌شود.

مثال از اتصال رشته‌ها

<?php
    $firstName = "علی";
    $lastName = "رضایی";

    $fullName = $firstName . " " . $lastName;
    echo "نام کامل: " . $fullName;
?>

خروجی:

نام کامل: علی رضایی

✅ می‌توان از .= نیز برای الحاق مقدار جدید به یک رشته استفاده کرد:

<?php
    $text = "PHP ";
    $text .= "یک زبان برنامه‌نویسی محبوب است.";
    echo $text;
?>

خروجی:

PHP یک زبان برنامه‌نویسی محبوب است.

۳. توابع پرکاربرد برای کار با رشته‌ها

PHP شامل مجموعه‌ای از توابع داخلی برای پردازش رشته‌ها است. در ادامه برخی از مهم‌ترین توابع رشته‌ای را بررسی می‌کنیم.

۳.۱ اندازه رشته (strlen)

تابع strlen() تعداد کاراکترهای یک رشته را برمی‌گرداند.

<?php
    $text = "سلام PHP!";
    echo strlen($text); // خروجی: 10
?>

۳.۲ تعداد کلمات یک رشته (str_word_count)

<?php
    $text = "PHP یک زبان محبوب است.";
    echo str_word_count($text); // خروجی: 5
?>

۳.۳ معکوس کردن رشته (strrev)

<?php
    echo strrev("PHP"); // خروجی: PHP
?>

۳.۴ جستجو در رشته (strpos)

تابع strpos() محل اولین رخداد یک زیررشته را برمی‌گرداند.

<?php
    $text = "PHP یک زبان محبوب است.";
    echo strpos($text, "زبان"); // خروجی: 4
?>

نکته: اگر مقدار false برگردد، یعنی کلمه موردنظر پیدا نشده است.


۳.۵ جایگزینی متن (str_replace)

تابع str_replace() یک زیررشته را با مقدار جدید جایگزین می‌کند.

<?php
    $text = "سلام دنیا!";
    echo str_replace("دنیا", "PHP", $text);
?>

خروجی:

سلام PHP!

۴. تبدیل حروف بزرگ و کوچک در رشته‌ها

۴.۱ تبدیل به حروف کوچک (strtolower)

<?php
    echo strtolower("HELLO PHP!"); // خروجی: hello php!
?>

۴.۲ تبدیل به حروف بزرگ (strtoupper)

<?php
    echo strtoupper("hello php!"); // خروجی: HELLO PHP!
?>

۴.۳ تبدیل حرف اول هر کلمه به بزرگ (ucwords)

<?php
    echo ucwords("php یک زبان برنامه‌نویسی محبوب است."); 
    // خروجی: Php یک زبان برنامه‌نویسی محبوب است.
?>

۵. برش رشته‌ها

۵.۱ استخراج بخشی از رشته (substr)

<?php
    $text = "PHP یک زبان محبوب است.";
    echo substr($text, 4, 7); // خروجی: یک زبان
?>

۵.۲ حذف فاصله‌های اضافی از ابتدا و انتها (trim)

<?php
    $text = "   PHP    ";
    echo trim($text); // خروجی: "PHP" (بدون فاصله‌های اضافه)
?>

۶. بررسی و اعتبارسنجی رشته‌ها

۶.۱ بررسی شروع یا پایان رشته (str_starts_with و str_ends_with)

<?php
    $text = "PHP یک زبان برنامه‌نویسی است.";
    echo str_starts_with($text, "PHP") ? "بله" : "خیر"; // خروجی: بله
    echo str_ends_with($text, "است.") ? "بله" : "خیر"; // خروجی: بله
?>

✅ این توابع از PHP 8 به بعد در دسترس هستند.


۷. تبدیل رشته به آرایه و بالعکس

۷.۱ تبدیل رشته به آرایه (explode)

<?php
    $text = "قرمز,سبز,آبی";
    $colors = explode(",", $text);
    print_r($colors);
?>

خروجی:

Array ( [0] => قرمز [1] => سبز [2] => آبی )

۷.۲ تبدیل آرایه به رشته (implode)

<?php
    $colors = array("قرمز", "سبز", "آبی");
    echo implode(" - ", $colors);
?>

خروجی:

قرمز - سبز - آبی

۸. تبدیل کدگذاری (mb_convert_encoding)

اگر بخواهید کدگذاری یک رشته را تغییر دهید:

<?php
    $text = "سلام دنیا!";
    echo mb_convert_encoding($text, "UTF-8", "Windows-1256");
?>

۹. امنیت و کنترل ورودی‌های متنی

برای جلوگیری از حملات XSS و SQL Injection، از htmlspecialchars() و strip_tags() استفاده کنید.

۹.۱ جلوگیری از اجرای کدهای HTML (htmlspecialchars)

<?php
    $text = "<script>alert('هک شد!');</script>";
    echo htmlspecialchars($text);
?>

خروجی:

&lt;script&gt;alert('هک شد!');&lt;/script&gt;

نتیجه‌گیری

در این راهنما، تعریف، مدیریت، پردازش و امنیت رشته‌ها در PHP را بررسی کردیم. تسلط بر این توابع به شما کمک می‌کند تا برنامه‌های کارآمدتر و ایمن‌تری ایجاد کنید. 🚀

ضبط پیام صوتی

زمان هر پیام صوتی 2 دقیقه است