آموزش PHP : پی‌اچ‌پی چیست ؟

آموزش PHP : پی‌اچ‌پی چیست ؟Reviewed by همیار پروژه on May 27Rating: 5.0پی‌اچ‌پی چیست ؟زبان PHP یک زبان برنامه نویسی، و یک ابزار قدرتمند برای ساخت صفحات وب پویا و تعاملی است

آموزش PHP : پی‌اچ‌پی چیست ؟

آموزش PHP : پی‌اچ‌پی چیست ؟

پی‌اچ‌پی چیست ؟ زبان PHP یک زبان برنامه نویسی، و یک ابزار قدرتمند برای ساخت صفحات وب پویا و تعاملی است.تا ژانویهٔ سال ۲۰۱۳ میلادی پی‌اچ‌پی بر روی ۲۴۴ میلیون وب‌گاه و ۲٫۱ میلیون سرور وب نصب شده‌است.این زبان در سال ۱۹۹۵ میلادی توسط راسموس لِردورف (به انگلیسی: Rasmus Lerdorf) ساخته‌شد و در حال حاضر توسعهٔ آن بر عهدهٔ گروه پی‌اچ‌پی می‌باشد. در ابتدا پی‌اچ‌پی از عبارت صفحهٔ خانگی شخصی (به انگلیسی: Personal Home Page) گرفته شده‌بود.اما اکنون این کلمه مخففِ بازگشتی PHP: Hypertext Preprocessor به معنی پی‌اچ‌پی: پیش‌پردازندهٔ ابرمتن می‌باشد.

کدهای پی‌اچ‌پی توسط یک سرور وب که نرم‌افزار پی‌اچ‌پی بر روی آن نصب باشد، تفسیر می‌شوند. دستورهای این زبان می‌توانند به صورت مستقیم در درون کدهای اچ‌تی‌ام‌ال قرار بگیرند. زبان پی‌اچ‌پی از نسخهٔ ۴٫۳ به بعد قابلیت پشتیبانی از واسط خط فرمان را نیز به امکانات خود اضافه کرد. این قابلیت می‌تواند برای ایجاد نرم‌افزارهای غیر وبی و یا نرم‌افزارهایی با واسط گرافیکی کاربر مورد استفاده قرار بگیرد.

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

ویژگیهای زبان PHP :
PHP یک ابزار اپن سورس و رایگان است و به همین دلیل هاست هایی که میزبانی آن را انجام می دهند ، بسیار ارزانتر از هاست های .Net هستند .
پی اچ پی بر روی تمامی پلتفورم های معروف مثل Windows , Linux و iOs اجرا می شود .
PHP یک زبان ساخت یافته بوده و یادگیری آن بسیار ساده است .
ابزار کار با PHP همگی اپن سورس بوده و استفاده از آنها رایگان هستند .

تاریخچه انتشار نسخه های مختلف PHP:

نسخه تاریخ انتشار تاریخ اتمام پشتیبانی یادداشت‌ها
۱٫۰ ۱۹۹۵/۰۶/۰۸ این نسخه به صورت رسمی “Personal Home Page Tools” یا “PHP Tools” نامیده شد. کلمهٔ پی‌اچ‌پی اولین بار در اینجا به کار رفت.
۲٫۰ ۱۹۹۷/۱۱/۰۱
۳٫۰ ۱۹۹۸/۰۶/۰۶ ۲۰۰۰/۱۰/۲۰ توسعه‌دهندگان از یک به چند نفر افزایش یافتند. زیو سوراسکی و اندی گاتمنس هستهٔ این نسخه را بازنویسی کردند.
۴٫۰ ۲۰۰۰/۰۵/۲۲ ۲۰۰۱/۰۱/۲۳ سیستم دومرحله‌ای تجزیه/اجرای پیشرفته تحت عنوان موتور زند به این نسخه اضافه شد.
۴٫۱ ۲۰۰۱/۱۲/۱۰ ۲۰۰۲/۰۳/۱۲ متغیرهای فوقِ سراسری(Superglobal) معرفی شدند. (GET، $_POST، $_SESSION و…)
۴٫۲ ۲۰۰۲/۰۴/۲۲ ۲۰۰۲/۰۹/۰۶ تنظیم register_globals به صورت پیش‌فرض غیرفعال شد. با این تغییر اطلاعاتی که از طریق شبکه ارسال می‌شدند، دیگر به طور مستقیم در محدودهٔ متغیرهای فوقِ سراسری قرار نمی‌گرفتند. این نکته مشکلات امنیتی احتمالی بسیاری از نرم‌افزارها را برطرف کرد.
۴٫۳ ۲۰۰۲/۱۲/۲۷ ۲۰۰۵/۰۳/۳۱ واسط خط فرمان یا همان CLI به این نسخه اضافه شد.
۴٫۴ ۲۰۰۵/۰۷/۱۱ ۲۰۰۸/۰۸/۰۷ صفحات راهنما(man page) برای درستورات phpsize و config-php اضافه شد.
۵٫۰ ۲۰۰۴/۰۷/۱۳ ۲۰۰۵/۰۹/۰۵ موتور زند نسخهٔ ۲ معرفی شد
۵٫۱ ۲۰۰۵/۱۱/۲۴ ۲۰۰۶/۰۸/۲۴ بهبود بازدهی با معرفی متغیرهای مترجم (Compiler Variables) در موتور جدید پی‌اچ‌پی. مدل PDO به عنوان یک رابط پایدار برای برقراری ارتباط با بانک‌های اطلاعاتی معرفی شد.
۵٫۲ ۲۰۰۶/۱۱/۰۲ ۲۰۱۱/۰۱/۰۶ افزونهٔ فیلتر (Filter Extension) به صورت پیش‌فرض فعال شد. پشتیبانی از جی‌سَن (JSON) افزوده شد.
۵٫۳ ۲۰۰۹/۰۶/۳۰ ژوئیه ۲۰۱۴ پشتیبانی از namespace، late static binding، دستور jump (نسخهٔ ضعیف شدهٔ دستور Goto) و زباله جمع‌کن. پشتیبانی بهتر از سیستم‌عامل ویندوز. پشتیبانی از اس‌کیوال‌لایت نسخهٔ ۳. کتابخانهٔ Mysqlnd جایگزین کتابخانهٔ libmysql (که مسئول برقراری ارتباط با بانک‌اطلاعاتی مای‌اس‌کیوال بود) شد. افزونهٔ fileinfo که کارایی بهتری در مورد MIMEها دارد، جایگزین افزونهٔ mime_magic شد. افزونهٔ بین‌الملل (Internationalization) اضافه شد و توابع ereg از دور خارج شدند.
۵٫۴ ۲۰۱۲/۰۳/۰۱ ۳ سال بعد از انتشار پشتیبانی از Trait. پشتیبانی از آرایه‌ها با فرمت کوتاه. سرور وب داخلی. بهبود کارایی و استفاده از حافظه به میزان کمتر.
توابع حذف شده: register_globals, safe_mode, allow_call_time_pass_reference, session_register
۵٫۵ ۲۰۱۳/۰۶/۲۰ ۳ سال بعد از انتشار جنراتورها افزوده شدند(Generators). بهینه‌ساز زند+ (Zend Optimizer+) افزوده شد.
۵٫۶ مشخص نشده ۳ سال بعد از انتشار قابلیت بازنویسی عملگرها (Operator Overloading). ایجاد تغییرات در GMP یا GNU Multiple Precision.
پیشنهاد ویژه :   فیلم آموزش سئو وردپرس با استفاده از افزونه Yoast SEO

 

ساختار زبان PHP :

متن “سلام دنیا” زیر با استفاده از زبان پی‌اچ‌پی که در درون کدهای اچ‌تی‌ام‌ال قرار گرفته‌است، نوشته شده:

از آنجایی که پی‌اچ‌پی نیازی ندارد که در درون کدهای اچ‌تی‌ام‌ال قرار بگیرد یا بر روی سرور وب اجرا شود، کوتاه‌ترین برنامه “سلام دنیا” پی‌اچ‌پی به صورت زیر است:

مفسر پی‌اچ‌پی تنها کدهایی که در درون جداکننده‌های پی‌اچ‌پی قرار بگیرند را تفسیر می‌کند. معروف‌ترین جداکننده‌های پی‌اچ‌پی علامت <?php و ?> است. جداکننده‌های دیگری مانند <script language=”php”> و </script> یا جداکنندهٔ کوتاه <? یا <?= (که برای خروجی دادن متن یا متغیر استفاده می‌شود) و <% یا <%= و %> نیز وجود دارند. تمامی نوشته‌هایی که در خارج از جداکننده‌های پی‌اچ‌پی قرار بگیرند، توسط مفسر تفسیر نشده و به عنوان خروجی ارسال خواهند شد. استفاده از جداکننده‌های کوتاه می‌تواند از قابلیت حمل برنامه بکاهد، از آنجا که این جدا کننده‌های توسط تنظیمات پی‌اچ‌پی قابل غیرفعال‌سازی هستند. از این رو استفاده از این جداکننده‌ها توصیه نمی‌شود. هدف تمامی این جداکننده‌ها این است که کد پی‌اچ‌پی را از قسمت غیر-پی‌اج‌پی مانند اچ‌تی‌ام‌ال جدا کند.

نام متغیرها در زبان پی‌اچ‌پی حتماً باید با نماد دلار آغاز شود و نیازی به مشخص کردن نوع آن‌ها نیست. برخلاف نام توابع و کلاس‌ها نام متغیرها به بزرگی و کوچکی حروف حساس هستند. خطوط جدید و فاصله‌ها نادیده گرفته شده (به جز فاصله‌هایی که در درون رشته‌ها قرار داشته باشند) و تمامی دستورهای این زبان با علامت سمی‌کولن (;) پایان می‌یابند. در زبان پی‌اچ‌پی به ۳ صورت متفاوت می‌توان کامنت گذاشت. از علامت‌های /* */ برای کامنت‌های چندخطی و از علامت‌های // یا # برای کامنت‌های یک خطی استفاده می‌شود.

از نظر ساختار کلی و کلمات کلیدی، پی‌اچ‌پی مانند بسیاری از زبان‌های سطح بالا از قواعد زبان سی پیروی می‌کند. اما برای تمام ساختارهای کنترلی قواعد نوع دومی نیز وجود دارد که می‌توان از آن‌ها مانند ساختار اصلی بهره برد. این قواعد نوع دوم مانند زبان‌های خانوادهٔ بیسیک است.

همیار پروژه PHP آموزش PHP

دیدگاه خود را بیان کنید