زبان PHP چیست

php چیست
آموزشگاه طراحی سایت پرتو به عنوان یکی از معتبرترین مراکز تخصصی برنامه نویسی وب در ایران، با برگزاری حرفهای کلاس آموزش PHP همواره در خط مقدم تربیت برنامه نویسان حرفهای قرار دارد. اگر شما هم قصد دارید به دنیای توسعه سمت سرور وارد شوید، اولین و مهمترین سؤالی که با آن مواجه میشوید این است: PHP چیست؟
در دنیای امروز که وبسایتها به بخش جداییناپذیر کسبوکارها و سازمانها تبدیل شدهاند، انتخاب زبان برنامهنویسی مناسب برای توسعه سمت سرور از اهمیت بسیار بالایی برخوردار است.
PHP (مخفف Hypertext Preprocessor) یکی از قدرتمندترین، محبوبترین و پرکاربردترین زبان برنامه نویسی متنباز در حوزه توسعه وب است که از سال ۱۹۹۵ تاکنون نقش کلیدی در ساخت میلیونها وبسایت پویا و حرفهای در سراسر جهان ایفا کرده است.
این زبان به دلیل سینتکس ساده، انعطافپذیری بالا، سازگاری کامل با سرورهای Apache و Nginx، و پشتیبانی گسترده از دیتابیسهایی نظیر MySQL، PostgreSQL و MongoDB، به انتخاب اول بسیاری از توسعهدهندگان و شرکتهای بزرگ تبدیل شده است.
وبسایتهایی مانند فیسبوک، ویکیپدیا، وردپرس و بسیاری از فروشگاههای آنلاین مطرح با استفاده از PHP یا فریمورکهای مبتنی بر آن توسعه یافتهاند.
زبان php برای سایتهایی که کاربران زیاد و ترافیک بالایی دارد و به روزرسانی به صورت مرتب انجام میشود، مناسب است. البته که شما هر نوع وب سایتی را می توانید با استفاده از زبان php توسعه دهید
PHP یک زبان برنامه نویسی است یا زبان اسکریپتی؟
در واقع PHP هم یک زبان برنامهنویسی کامل است و هم یک زبان اسکریپتی.
این دو اصطلاح با هم در تضاد نیستند و استفاده همزمان از آنها کاملاً صحیح است.
«زبان اسکریپتی» (Scripting Language) در اصل به روش اجرای زبان اشاره دارد، نه به قدرت یا نوع کاربرد آن. یعنی کدی که نوشته میشود بدون نیاز به مرحله کامپایل جداگانه، خط به خط توسط یک مفسر (Interpreter) اجرا میشود.
PHP دقیقاً همینگونه کار میکند؛ وقتی مرورگر درخواست یک فایل .php میدهد، سرور آن را در لحظه تفسیر و اجرا میکند (هرچند از PHP 8 به بعد با فناوری JIT بخشی از کد را پیشکامپایل هم میکند تا سریعتر باشد).
در مقابل، «زبان برنامهنویسی» (Programming Language) یک اصطلاح کلیتر است که هر زبانی را شامل میشود که بتوان با آن منطق پیچیده، ساختار داده، شیءگرایی، مدیریت حافظه و سیستمهای بزرگ نوشت – و PHP تمام این ویژگیها را دارد.
امروزه دیگر هیچ متخصص معتبری نمیگوید «PHP زبان برنامهنویسی نیست»، چون :
• کاملاً شیءگرا است (کلاس، وراثت، trait، interface، generics)
• از نوعدهی قوی و استاتیک پشتیبانی میکند
• میتوان با آن برنامههای CLI، میکروسرویس، API و حتی اپلیکیشن دسکتاپ نوشت
• فریمورکهای Laravel، Symfony و غیره در سطح enterprise استفاده میشوند
PHP چگونه کار میکند
1. کاربر آدرس یک صفحه را در مرورگر وارد میکند (مثلاً example.com/index.php)
2. مرورگر درخواست HTTP را به سرور وب (معمولاً Apache یا Nginx) میفرستد.
3. سرور متوجه میشود فایل درخواست شده پسوند .php دارد ← آن را به مفسر PHP میسپارد.
4. مفسر PHP فایل را از بالا به پایین میخواند و اجرا میکند:
1. کدهای PHP را پردازش میکند (متغیرها، حلقهها، اتصال به دیتابیس، منطق برنامه و …)
2. خروجی را به صورت HTML، CSS، JavaScript یا JSON خالص تولید میکند.
5. خروجی نهایی (که حالا فقط HTML معمولی است) به سرور وب برگردانده میشود.
6. سرور وب این HTML را از طریق HTTP به مرورگر کاربر میفرستد.
7. مرورگر صفحه را نمایش میدهد ← کاربر هیچگاه کد PHP را نمیبیند و فقط نتیجه آن را مشاهده میکند.
منظور از سمت سرور چیست
«سمت سرور» یعنی تمام منطق اصلی وبسایت (اتصال به دیتابیس، احراز هویت، پردازش پرداخت، تولید محتوا و …) روی سرور قدرتمند میزبانی انجام میشود و کاربر فقط نتیجه نهایی و امن آن را دریافت میکند – و دقیقاً به همین دلیل است که PHP همچنان یکی از بهترین و امنترین گزینهها برای توسعه وبسایتهای حرفهای و پویا محسوب میشود.
منظور از سمت کاربر چیست
سمت کاربر (Client-Side) به بخشی از وبسایت یا برنامه وب گفته میشود که تمام پردازشها و اجرای کدها مستقیماً داخل مرورگر بازدیدکننده (روی کامپیوتر، گوشی یا تبلت او) انجام میگیرد.
برخلاف سمت سرور که منطق اصلی روی سرور میزبان اجرا میشود، در سمت کاربر زبانهایی مانند JavaScript، TypeScript یا فریمورکهایی مثل React، Vue و Angular مسئول ایجاد تعاملات لحظهای، انیمیشنها، اعتبارسنجی فرمها، تغییر ظاهر صفحه بدون رفرش و دریافت داده از APIها هستند.
این بخش کاملاً در دسترس کاربر است و کد آن از طریق ابزارهای توسعهدهنده مرورگر قابل مشاهده و حتی تغییر است؛ به همین دلیل برای کارهای حساس امنیتی (مثل بررسی رمز عبور یا دسترسی به دیتابیس) استفاده نمیشود، اما باعث سرعت بالای واکنش صفحه و تجربه کاربری روانتر میشود.
بهطور خلاصه، هر چیزی که «بدون نیاز به ارسال درخواست جدید به سرور» در صفحه شما اتفاق بیفتد، مربوط به سمت کاربر است.
ویژگی های زبان php چیست
1. متنباز و کاملاً رایگان
2. سمت سرور (Server-Side) و تفسیرشونده
3. سینتکس ساده و نزدیک به زبان C
4. کاملاً شیءگرا (OOP) با پشتیبانی از Trait، Interface، Abstract Class و Generics
5. نوعدهی قوی و تدریجی (Strict Types)
6. پشتیبانی از برنامهنویسی تابعی (Functional Programming)
7. کامپایلر JIT در PHP ۸ برای عملکرد نزدیک به زبانهای کامپایلشونده
8. OPcache داخلی برای کش کردن کد کامپایلشده و افزایش سرعت
9. سازگاری کامل با Apache، Nginx و IIS
10. اتصال آسان و قدرتمند به MySQL، PostgreSQL، SQLite، MongoDB و …
11. صدها کتابخانه و افزونه داخلی (GD، Curl، PDO، JSON، XML، Session و …)
12. پشتیبانی از MVC در فریمورکهای Laravel، Symfony، CodeIgniter
13. مدیریت خطا و Exception پیشرفته
14. قابلیت نوشتن برنامههای CLI (خط فرمان)
15. امنیت بالا در صورت کدنویسی اصولی (Prepared Statement، CSRF Protection و …)
16. جامعه بسیار بزرگ و مستندات کامل
17. بیش از ۷۷٪ وبسایتهای جهان مستقیم یا غیرمستقیم از آن استفاده میکنند
18. بهروزرسانی مداوم و پشتیبانی بلندمدت (LTS)
نرم افزارهایی که با PHP ایجاد شده اند
نرم افزار های زیادی با استفاده از PHP ایجاد شده که مشهورترین آنها عبارت است از :
• WordPress – بزرگترین سیستم مدیریت محتوا (CMS) دنیا (بیش از ۴۳٪ کل وبسایتهای جهان)
• WooCommerce – محبوبترین فروشگاهساز آنلاین دنیا (بر پایه وردپرس)
• Laravel – معروفترین فریمورک PHP برای ساخت پروژههای حرفهای
• Facebook – بخش عظیمی از نسخه اولیه و هنوز بسیاری از قسمتهای آن با PHP (همراه با Hack)
• Wikipedia – تمام ویکیپدیا و پروژههای بنیاد ویکیمدیا با MediaWiki (نوشتهشده با PHP)
ا Magento – یکی از قدرتمندترین پلتفرمهای فروشگاهساز سازمانی
• Drupal – CMS حرفهای و انعطافپذیر برای سایتهای بزرگ و دولتی
• Joomla – سیستم مدیریت محتوای محبوب و قدرتمند
• Slack – بخشهایی از بکاند اولیه آن با PHP نوشته شده بود
Shopify – بخشهایی از سیستم مدیریت قالبها و اپلیکیشنها با PHP
• PrestaShop – فروشگاهساز متنوری متنباز محبوب
• phpBB – معروفترین نرمافزار انجمنساز (فروم)
• MediaWiki – نرمافزار پشت ویکیپدیا
• Nextcloud – جایگزین متنباز Google Drive و Dropbox
• Matomo (قبلاً Piwik) – بهترین جایگزین متنباز Google Analytics
PHP از چه پایگاه داده هایی استفاده می نماید؟
MySQL ← حدود ۷۵–۸۰٪ تمام پروژههای PHP
MariaDB ← تقریباً ۱۵–۱۸٪ (جایگزین مستقیم MySQL در بسیاری از هاستینگها)
PostgreSQL ← حدود ۵–۷٪ (در پروژههای حرفهای، استارتآپی و سازمانی رو به رشد سریع)
SQLite ← حدود ۳–۵٪ (در اسکریپتهای کوچک، اپلیکیشنهای داخلی، پلاگینهای وردپرس و پروژههای آفلاین)
Redis ← بیش از ۳۰٪ پروژههای متوسط به بالا (بهعنوان کش و Session Store، نه دیتابیس اصلی)
MongoDB ← کمتر از ۲٪ پروژههای PHP (معمولاً در کنار MySQL بهعنوان دیتابیس دوم برای دادههای غیرساختیافته)
سایت های معروفی که با استفاده از زبان PHP ایجاد شده اند
Facebook.com – هنوز بخش بزرگی از بکاند با PHP + Hack (نسخه پیشرفته PHP)
Wikipedia.org – تمام سایتهای ویکیپدیا با PHP (MediaWiki)
WordPress.com – پلتفرم اصلی وردپرس دات کام
Canva.com – بخشهای زیادی از بکاند با PHP و Laravel
Slack.com – تا چند سال پیش کاملاً PHP بود، هنوز بخشهایی باقی مانده است.
Etsy.com – فروشگاه دستساز معروف (بکاند اصلی با PHP)
Yahoo.com – هنوز بخشهای زیادی با PHP کار میکند
Mailchimp.com – پلتفرم ایمیل مارکتینگ (بکاند با PHP)
Vimeo.com – تا سالهای اخیر بکاند اصلی با PHP بود
Digg.com – کاملاً با PHP
Tumblr.com – تا زمان خرید توسط Automattic کاملاً PHP بود
9GAG.com – سایت معروف میمها با PHP
SoundCloud.com – بخشهایی از بکاند قدیمی با PHP
سایتهای ایرانی معروف با PHP (همه ۱۰۰٪ PHP)
دیجیکالا (بکاند اصلی تا چند سال پیش کاملاً PHP و لاراول بود، هنوز بخشهای زیادی باقی است)
آپارات
فیلیمو
دیوار
شیپور
اسنپفود
زومیت
ورزش سه
باما (Bama.ir)
همراه مکانیک
* تقریباً ۹۹٪ سایتهای ایرانی بزرگ و متوسط با PHP (بهویژه لاراول) ساخته شدهاند.
این بدین معنی است که یادگیری PHP = تضمین شغلی در ایران و بازار جهانی!
اساتید ما در کلاس آموزش PHP در آموزشگاه کامپیوتر پرتو دقیقاً همین پروژههای واقعی (مشابه دیجیکالا، دیوار و آپارات) را از صفر تا صد به شما خواهند آموخت. بنابراین در صورتیکه قصد ورود به بازار کار طراحی سایت به شکلی کاملا حرفه ای را دارید، همین امروز اقدام نمایید …










دیدگاه خود را ثبت کنید
تمایل دارید در گفتگوها شرکت کنید ؟در گفتگو ها شرکت کنید!