پی اچ پی (PHP) یک زبان برنامه نویسی (و اسکریپت نویسی) تحت وب است که در سمت سرور اجرا شده و میتواند صفحات پویا (داینامیک) را در اختیار کاربر قرار داده یا سرویس خاصی را پیدا سازی کند.
این پست از سری آموزشهای زبان PHP بوده و جلسه اول آن است.
زبان PHP چیست؟
پی اچ پی (PHP) مخفف عبارت Personal Home Page بود که بعدها به PHP: Hypertext Preprocessor تغییر یافت. یک زبان برنامه نویسی و اسکریپت نویسی رایگان، متن باز و بسیار پر استفاده تحت وب است که در سمت سرور اجرا میشود.
یعنی چه در سمت سرور اجرا میشود؟ بگذارید به نحوه کار یک وبسایت به صورت کاملاً ابتدایی نگاهی بیندازیم:
همانطور که میبینید، ابتدا کاربر درخواست مشاهده صفحهای را میکند (مثلاً ممکن است روی یک لینک کلیک کند یا به صورت مستقیم آدرس را تایپ کند) یا کاربر یک فرم را دارد ارسال میکند. حال مرورگر به سروری که با استفاده از DNS آن را پیدا کرده، درخواست خود را میدهد. این درخواست ممکن است بصورت GET یا POST باشد که بعداً بحث خواهد شد، همچنین ممکن است در کنار این درخواست، کوکیهایی نیز به سرور ارسال شوند.
حال که سرور درخواست کاربر را دریافت کرده، با استفاده از یک زبان اسکریپت نویسی در سمت سرور، آن را پردازش کرده، عملیات مختلفی طبق آن درخواست انجام داده و در نهایت یک صفحه پویا یا داینامیک را در اختیار کاربر قرار میدهد. در نهایت مرورگر کاربر پاسخی که شامل کدهای صفحه است را از سرور دریافت کرده و با استفاده از موتور رندرینگ خود، صفحه را به صورت گرافیکی و قابل خواندن در اختیار کاربر قرار میدهد. به این ترتیب کاربر میتواند صفحه را ببیند.
خب حال که با نحوه ارسال درخواست/دریافت پاسخ از طرف مرورگر کاربر و سرور وبسایت آشنا شدیم، میدانیم که سمت سرور و سمت کاربر بودن یک زبان پردازشی چگونه است. زبانهایی نظیر جاوا اسکریپت (JavaScript) و طراحی HTML را در نظر بگیرید. اینها فقط و فقط در سمت مرورگر کاربر اجرا میشوند. و زبانهایی مثل PHP و ASP در سمت سرور. نوشتن اسکریپت و برنامه در زبان پی اچ پی بسیار ساده است با این حال پیاده سازی پروژههای بزرگ، طبعاً نیاز به صرف وقت زیادی خواهد بود.
زبان اسکریپت نویسی چیست؟
شاید سوالی که پیش بیاید این باشد که زبان “برنامه نویسی” با “اسکریپت نویسی” چه فرقی میکند؟ اگر قبلاً تجربه برنامه نویسی مثلاً ویندوز داشته باشید، حتماً دیده اید که پس از نوشتن کدهای برنامه، یک برنامه دیگر آنها را برای همیشه کامپایل کرده و به صورت یک فایل قابل اجرا در میآورد. اما در زبانهای اسکریپت نویسی، کدهای ما به این صورت کامپایل نمیشوند یعنی هرگاه که بخواهیم میتوانیم متحوای صفحه را تغییر داده و کدها را به گونه دیگری عوض کنیم.
با این حال برای سادگی، زبان PHP را یک زبان برنامه نویسی تحت وب نیز مینامند درحالی که لفظ اسکریپت نویسی صحیح تر است. اسکریپتهای نوشته شده توسط هسته PHP که خود به زبان C نوشته و کامپایل شده است، کنترل شده و اجرا میشوند. یعنی ما با کدهایمان به هسته PHP دستور میدهیم که چه کاری انجام دهد.
خب تا اینجا برای جلسه اول آموزش زبان PHP کافیست. در بخش بعدی، مقدمات اسکریپت نویسی PHP آموزش داده خواهد شد.
سلام اقای نصیری یوزر پسورد اومد مرسی ولی لینک ورود خرابه اگه می شه برام تصحیش کنیدو بفرستید .با تشکر نویسنده اینده سایت:)
سلام داداش. لینک ورود همونیه که بهتون داده بودم. به نظر میرسه به دلیل این که چندین بار رمز رو اشتباهی زدین، سیستم شما رو بلاک کرده واسه مدتی. 🙁
salam mishe overheading tabe ro tozih bedid?estefade az tabe inline chejuri in moshkelo hal mikone
سلام. منظورتون از overheading چیه؟ من تاحالا این اصطلاح رو نشنیدم.
مرسی امیر جان
مطالب خیلی خوبی رو قرار میدی..
خواهش میکنم علی آقا 🙂
قبل از اینکه به مطالبی که به آن آگاه نیستید جواب بدید لطفا در مورد ان کلمه یا متن تحقیق کنید .به عنوان یک منتقد گفتم تا شاید کمی در بروز رسانی و پیشرفت و بازدید از سایتتان شما را یاری کرده باشم.
تا جای که وقت داشتم به بعضی از مطالب سایتتان دقت کردم و آنها را مورد مطالعه قرار دادم در کل مطالب جالب و هرچند پایه ای ولی صریح و شفاف بودند.
با تشکر
سلام، خیلی ممنونم از انتقادتون. والا تا جایی که وقت یاری کنه اول سر سوالات کاربرا یکم تحقیق میکنم و بعد جوابشونو میدم.
بسیااااااااااااار ممنون خیلی خوووووووووووب بووووووووووووووووووووووووود
ممنون، زنده و سربلند باشی 🙂
سلام بسیار عالی بود
در مورد امنیت در پی اچ پی هم اگه آموزش دارین بذارید استفاده کنیم
سلام. بله، دو تا آموزش گذاشتم فعلا با عنوان های “جلوگیری از حمله تزریق به دیتابیس (SQL Injection)” و “اصلاح و جلوگیری از باگ تزریق کد (XSS)” که میتونن خیلی مفید باشن براتون.
سلام
واقعا عالی بود دستتون درد نکنه
خواهش میکنم 🙂 موفق باشید.