تاریخچه زبان برنامه نویسی PHP

تاریخچه زبان برنامه نویسی PHP از زمانی شروع شد که Lerdorf Rasmus دانمارکی در سال ۱۹۹۴ تعدادی اسکریپت به منظور مدیریت یک سری از کارها در سایت شخصی خود با زبان برنامه نویسی Perl نوشت. Lerdorf با استفاده از این اسکریپت ها که بر اساس استاندارد اسکریپت نویسی )Interface Gateway Common )نوشته شده بودند، آمار افرادی را که در حال خواندن رزومه اش بودند محاسبه و ذخیره کرد. او با این کار توجه افراد زیادی را به اسکریپت هایش جلب کرد و از او درخواست کردند تا اسکریپت ها را برای آنها هم ارسال کند. بنابراین Lerdorf تصمیم گرفت که نام اسکریپت های خود را PHP گذارد که مخفف عبارت Personal Home Page بود.


Lerdorf در سال 1997 زبان PHP را به نسخه دوم ارتقا داد و توانست نظر توسعه دهندههای زیادی را به خودش جلب کند. بازنویسی موتور پردازشی PHP در سال 1998 به پایان رسید و به عنوان نسخه سوم PHP عرضه شد. البته در همین سال تصمیم گرفتند که به کلمه PHP مفهومی جدید دهند. آنها تصمیم گرفتند که دیگر دو حرف میانی کلمه PHP برگرفته از عبارت Page Home نباشند و به عنوان مخففی از عبارت Preprocessor Hypertext در نظر گرفته شوند.


منظور از این دو حرف به زبان ساده این است که زبان PHP اطالعات را قبل از اینکه به صورت HTML به کاربر نمایش دهد، پردازش میکند و سپس آن را در قالب HTML به کاربر نمایش میدهد.)منظور از Hypertext ابر متن یا متنهای بزرگ و طولانی است که احتمال دارد در آن تصویر، جدول و… به کار رفته باشد که در حقیقت همان فایل HTML است که کاربر در قالب صفحات وب مشاهده میکند ).

به تدریج با گذشت زمان به تعداد توسعه دهندگان اولیه زبان PHP به منظور توسعه بخشهای دیگر این زبان اضافه شد و به این ترتیب بود که زبان برنامه نویسی PHP به یک پروژه متن باز یا Source Open تبدیل شد. در سال 2000 Zeev Suraski به همراه همکارش Gutmans Andi تصمیم به تاسیس شرکتی با نام Zend گرفتند. در آن شرکت هسته اصلی زبان PHP دوباره زیر تیغ جراحی توسعه دهندگان قرار گرفت و بازنویسی شد. در این بازنویسی تغییرات زیادی بر روی PHP اعمال شد که هسته آن را Engine Zend نامیدند و به عنوان نسخه چهارم از این زبان ارائه کردند. PHp در سال 2004 به نسخه پنج بروزرسانی شد. در این بروزرسانی تغییر و تحوالت زیادی را در این زبان شاهد بودیم که مهمترین تغییرات آن میتوان به پشتیبانی از کد نویسی شی گرا و ارتباط بهتر با پایگاه داده اشاره کنیم. بنابراین میتوان نسخه پنجم از زبان PHP را نقطه عطف این زبان در دنیای برنامه نویسی بدانیم، چرا که در این بروزرسانی قابلیتها و امکانات زیادی به این زبان برنامه نویسی اضافه شد که کدنویسی با این زبان را بیش از پیش برای برنامه نویسان لذت بخش تر کرد.


برنامه نویسی PHP چیست؟PHP یک زبان تفسیرشونده است که اساس و بنیان آن طراحی و ایجاد صفحات پویای وب بوده است. به عبارتی دیگر، کسانی که وظیفه کدنویسی سایت را بر عهده دارند با استفاده از زبان PHP قادر خواهند بود وب اپلیکیشن هایی طراحی کنند که به صورت تعاملی میباشند. منظور از تعاملی بودن وجود قابلیت هایی مانند سطوح دسترسی مختلف برای کاربران، امکان ثبتنام در سایت، پنل کاربری ، ذخیره اطالعات کاربران و بسیاری از امکانات دیگر است که امروزه در تمامی سایتهای امروزی مشاهده میکنیم. نگران نباشید شما در حقیقت بسیاری از پیش نیازها را از قبل دارید و یا کم کم در طول یادگیری PHP میتوانید به صورت موازی به دست آورید، مانند آشنایی با زبان انگلیسی، مفاهیم کامپیوتر و غیره. بنابراین برای اینکه بخواهید PHP را به صورت اصولی آموزش ببینید و در مسیر یادگیری با ضعف و سردرگمی مواجه نشوید، کافی است به صورت کاربردی با زبان HTML و CSS آشنا شوید تا بتوانید آنها را به کار گیریدبنابراین اگر بخواهیم به صورت کلی پیش نیازهای اساسی ) فنی و غیرفنی ( برای یادگیری PHP را جمع بندی کنیم، به صورت زیر مطرح میشوند: داشتن وقت و انگیزه کافی آشنایی با زبان انگلیسی، الگوریتم و ریاضیات آشنایی مقدماتی برای کار با کامپیوتر و اینترنت آشنایی با طراحی وب مقدماتی شامل HTML و برای آموزش PHP از پایه و ورود به دنیای برنامه نویسی، باید HTML و CSS را به عنوان پیش نیازهای فنی یاد بگیرید. پس از اینکه با این موارد آشنا شدید، میتوانید صفحات سایت خود را طراحی کنید. بعد از آن نوبت به تمرین برنامه نویسی PHP میرسد تا پس از یادگیری مفاهیم این زبان، راه خود را در مسیر رسیدن به قله های برنامه نویسی پیش بگیرید. در مقاله بعدی کوتاهترین مسیر و بهترین منابع یادگیری PHP را به شما معرفی خواهیم کرد. بنابراین حتما مقاله بهترین منابع آموزش PHP را مطالعه کنید تا بتوانید بهترین دوره آموزشی PHP راپیدا کنید و همه چیز در مورد PHP را آموزش ببینید.


کاربردهای PHP چیست ؟


همانگونه که در باالتر عنوان شد PHP یک زبان برنامه نویسی است که توسط آن میتوان صفحات وب پویا را طراحی نمود.اما چیزی که مهم است بدانیداین است که اگر بخواهیم ساده بگوییم ،PHP امور پشت صحنه ! سایت را بر عهده دارد و امور ظاهری سایت و به اصطلاح خودم! خوشگال زاسیون! بر عهده آن نیست.در حقیقت PHP زبانی است که قدرت آن در زمان ارتباط با Database یا پایگاه داده نمایان میشود.


PHP قادر است اطالعات را از دیتابیس خوانده و یا اطالعات را به آن ارسال نماید.بنابراین با استفاده از PHP قادر خواهید بود با اتصال به دیتابیس ،اطالعات مختلف من جمله انواع نظرات ،متون ، محاسبات و … را به کاربر نمایش دهید.
جهت اجرای کدهای php به دو روش میتوان اقدام نمود :
اجرای کدهای php در سرور واقعی
بهترین آموزشگاه برنامه نویسی برای درک بهتر این مفاهیم در کنار شماست.
در این روش الزم است تا کدها را بر روی یک هاست و سرور آپلود نمایید .بنابراین الزم است تا یک هاست و دامین را از قبل خریداری نموده و فایل های نوشته شده به زبان php را در آن آ پلود نمایید .نکته : این روش برای اجرای یک پروژه ،روشی غیر استاندارد است زیرا پس از هربار تغییر در کدها الزم است تا پروژه را بر روی هاست آپلود نمایید و از آن ها تست بگیرید که این روند ،فرایندی وقت گیر خواهد بود.اجرای کدها در سرور نمایاین روشی است که در کالس های آموزشی و یا حتی برای اجرای پروژه های واقعی به برنامه نویسان پیشنهاد میشود.شما میتوانید با استفاده از نرم افزارهای شبیه سازی wamp ,xampp و یا storm php کدهای خود را به راحتی تست و اجرا نمایید.
هر زبان برنامه نویسی یک اصول و مفاهیم پایه دارد. به عنوان مثال قبل از اینکه شما دستور for یا while را در php بخواهید بخوانید و استفاده کنید بهتر است اندکی با مفهوم حلقه ها و محل کاربرد آنها آشنایی پیدا کنید.البته غالباً افرادی که قبل از این با یک زبان دیگر برنامه نوشته اند در این مراحل مشکلی ندارند و به سرعت پیش می روند
مفاهیم را که پشت سر گذاشتید زمان آن می رسد که یک دوره آموزش phpرا پشت سر بگذارید. این آموزش می تواند در قالب کالس ، کتاب ویا سایتهای آموزشی باشد. در این مرحله معموالً سرفصل ها مشخص است و شما با اصول phpآشنا خواهید شد. به عنوان مثال انواع متغیرها ، عملگرهای حسابی و منطقی ، شرط ها ،آرایه ها، حلقه ها ،کار با فرم ها و …)ما در کدفرند دوره مقدماتی و رایگان آموزش PHPرا آماده کردیم که میتوانید از آن به عنوان سکوی پرتاب در یادگیری php استفاده کنید ).


با توجه به اینکه این مرحله زمان زیادی از شما نمی گیرد و براحتی می توانید در چند روز از عهده ی آن برآیید من پیشنهاد میکنم از سایتهای ارائه دهنده ی مطالب آموزش استفاده کنید تا هم در وقت و هم در هزینه صرفه جویی کرده باشید.دقت داشته باشید شما به دنیایی پا گذاشته اید که از ملزومات آن تسلط باال بر زبان انگلیسی است. چون در مراحل پیشرفته تر منابع فارسی زبان کفایت کار شما را نمی کند و به مشکل اساسی برمی خورید.بهترین تمرین برای آموزش زبان همین است که سعی کنید در کنار استفاده از منابع فارسی زبان از منابع انگلیسی هم بهره ببرید .کم کم به جایی خواهید رسید که با یک نگاه کلی به متن مفهوم آنرا به راحتی دریافت می کنید .


شما مرحله قبل را بخوبی پشت سر گذاشته اید،االن باید احساس بهتری نسبت به یادگیری داشته باشید. وقت آن است که یک پروژه ی کوچک انجام دهید که اندکی کاربردی تر باشد.پروژه های زیادی وجود دارد که به عنوان تمرین انجام دهید. یکی از اسکریپت هایی که می تواند تمرین بسیار خوبی برای شما باشد و نکات فراوانی را در آن خواهید آموخت یک سیستم ثبت نام و ورود کاربر به پروفایلش می باشد.در این اسکریپت شما با دیتابیس و نحوه ی ساختن جدول، افزودن یک رکورد به جدول، پرس و جوها ، ویرایش و حذف رکوردهای جدول دیتابیس آشنا خواهید شد. در کنار انجام این پروژه می توانید نکاتی در مورد امنیت و اعتبارسنجی و کار با انواع المان های یک فرم HTML نیز فرا بگیرید.هم اکنون شما اصول php را فراگرفته اید و اسکریپت هایی برای خود نوشته اید. در این مرحله توصیه می شود برای ادامه کار یک فریم ورک مناسب برگزینید و شروع به کار با آن کنید تا در آن حرفه ای شوید.فریم ورک ها حجم کدهای شما را پایین خواهند آورد و باطبع در عین بالا رفتن کیفیت کار از لحاظ امنیت و بهینه بودن کدها در وقت شما نیز صرفه جویی خواهد شد. با توجه به متن باز بودن php پالگین های متنوعی برای آنها نوشته شده که هم می تواند نیاز برنامه نویسی شما را تامین کند و هم منبعی برای یادگیری شما
باشد.در این مطلب با بهترین فریم ورک های php آشنا شده ایم.
هیچ دانشی بدون تمرین و تالش حاصل نمی شود. حال وقت آن رسیده تمرین های متنوعی انجام دهید. در تاالرهای گفتگو مربوط به php زیاد فعالیت کنید. این تاالرها عالوه بر رفع اشکاالت شما می توانند منبع خوبی برای تمرین و ایده گرفتن باشند. سعی کنید به تمامی امکاناتی که در وبسایتها و یا سیستم های مدیریت محتوای مختلف وجود دارد توجه کنید و کنجکاو شوید که چگونه می توانید این اسکریپتها را خودتان بنویسید. کنجکاو باشید و برای یافتن جواب سوالهایتان زیاد جستجو کنید،هیچ سوالی بدون جواب نخواهد ماند. سعی کنید با چند برنامه نویس حرفه ای ارتباط برقرار کنید تا در صورت نیاز از آنها کمک بگیریدو.مطمئن باشید هر برنامه نویسی از اینکه اطالعاتش را در اختیار دیگران قرار دهید خوشحال می شود.


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


در هر صورت اکنون که دربارهی آن تحقیق کرده اید، شاید تصمیم خود برای یادگیری PHP گرفته باشید. اگر واقعاً اینطور است، تنها یک چیز باقی مانده…
زمان یادگیری PHP فرا رسیده است!
مانند هر چیز دیگری که برای یادگیری انتخاب میکنیم، پروسهی یادگیری PHP نیز می تواند دشوار و مایوس کننده باشد.
اما برای بسیاری از افراد، مسیری زیباست و در پایان به شدت احساس پاداش میکنند.
پیشنهادات این راهنما را به کار بگیرید و با موفقیت این مسیر را طی کنید.