زمان کنونی: ۱۰-۱-۱۴۰۳, ۰۲:۲۹ صبح درود مهمان گرامی! (ورودثبت نام)


ارسال پاسخ 
 
امتیاز موضوع:
  • 1 رأی - میانگین امتیازات: 5
  • 1
  • 2
  • 3
  • 4
  • 5
تاریخچه PHP
۲۵-۹-۱۳۸۹, ۱۱:۲۹ صبح
ارسال: #1
تاریخچه PHP
یکی از شناخته شده ترین زبان های اسکریپت نویسی، PHP است. این زبان که در ابتدا به منظور طراحی و ساخت صفحات پویای وب طراحی شد، در حال حاضر یک زبان اسکریپت نویسی همه منظوره است که قابلیت های متعددی دارد و در برنامه های کاربردی گوناگونی استفاده می شود.

عبارت PHP سرنام عبارت "صفحه خانگی شخصی" است. پیدایش PHP به سال ۱۹۹۵ بازمی گردد، زمانی که یک توسعه دهنده نرم افزار مستقل به نام راسموس لردورف یک اسکریپت Perl/CGI نوشت که او را از تعداد بازدیدکنندگان وب سایت شخصی اش مطلع می ساخت. اسکریپت او انجام دو وظیفه را برعهده داشت: گزارش گیری از اطلاعات بازدید کننده از سایت و شمارش تعداد کاربران. در آن زمان وب، به فرمی که اکنون ما آن را می شناسیم، هنوز بسیار جوان بود و ابزار هایی از این نوع هنوز پا به عرصه وجود نگذاشته بودند. بنابر این اکثر کاربرانی که از سایت لردورف بازدید می کردند، با ارسال نامه های الکترونیکی از وی درخواست می کردند که اسکریپت های خود را برای آنها بفرستد. به این ترتیب لردروف شروع به ارسال این اسکریپت ها تحت عنوان صفحه خانگی شخصی یا PHP کرد.

استقبال بی نظیر از این مجموعه ابزار های ابتدایی لردروف را بر آن داشت که اجزای بیشتری را به PHP اضافه کند. یکی از این اجزای جدید داده های وروردی به فرم HTML را به متغیر های سمبلیکی تبدیل می کرد که به کاربران اجازه می داد فایل را به سیستم های دیگر منتقل کنند. برای انجام این کار، لردروف کدنویسی را با زبان C به جای پرل ادامه داد. در نوامبر سال ۱۹۹۷ با انتشار PHP ۲.۰ این زبان یک فرم رسمی پیدا کرد.

● امکانات و ویژگی ها

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

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

مهم ترین زبان های مشابه PHP عبارتند از: سیستم ASP.NET شرکت مایکروسافت، JavaServer Pages سان میکروسیستم و پرل. علاوه بر این، PHP مشوق توسعه چند قالب کاری است که بلوک های ساختاری و طراحی مناسبی را برای پیشرفت توسعه سریع برنامه های کاربردی (RAD) ایجاد کرده اند. برخی از این قالب های کاری عبارتند از: CakePHP،PRADO و Symfony.

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

از دیگر قابلیت های PHP می توان به امکان رمز گذاری اشاره کرد. کتابخانه MCrypt کاربران را قادر می سازد که از گروه بزرگی از الگوریتم های رمز گذاری مانند Blowfish، MD۵، SHA۱ و TripleDES استفاده کنند. کتابخانه MCrypt را می توان از وب سایت آن دریافت کرد:

دیدن لینک ها برای شما امکان پذیر نیست. لطفا ثبت نام کنید یا وارد حساب خود شوید تا بتوانید لینک ها را ببینید.


نسخه های جدید PHP همچنین از زبان جاوا و امکانات آن پشتیبانی می کند. PHP همچنین دارای کتابخانه های متعددی است که امکان انجام عملیات گسترده و متنوعی را به برنامه نویس می دهد. توسعه دهندگان PHP با اطلاع از این که قابلیت پردازش عبارات منظم نقش مهمی را در پذیرش PHP در میان برنامه نویسان ایفا می کند، کتابخانه PCRE را به این مجموعه افزودند. PCRE که مخفف است، امکان پردازش عبارات منظم سازگار با پرل را فراهم می کند. به این ترتیب آنها به جای این که قابلیت های پرل را مجددا در PHP پیاده سازی کنند، آنها را مستقیما به زبان اضافه کردند. پشتیبانی از سرویس های وب و XML از دیگر قابلیت های PHP است. پشتیبانی از PHP از پایگاه های داده نیز از جمله امکاناتی است که در طول زمان و براساس نیاز هایی که به مرور به وجود آمدند، به مجموعه ابزار های PHP افزوده شد. پشتیبانی از سرور پایگاه داده های SQLite راه حل ساده ای برای توسعه دهندگانی است که در جستجوی برخی از ویژگی ها و قابلیت های پایگاه های داده بزرگ و سنگین هستند، بی آن که با بار سنگین مسائل مدیریتی موجود در چنین پایگاه های داده ای روبرو شوند.

● قابلیت های منحصر به فرد

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

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

قدرت PHP در نسخه PHP ۵ افزایش چشمگیری یافته است. نسخه حاضر بر خلاف نسخه های قبلی بیشتر به کیفیت توجه کرده است تا کمیت. در نسخه های پیشین هربار نسخه جدید حجم انبوهی از توابع جدید را به کتابخانه های PHP می افزود. در حال حاضر مجموعه ۱۱۳ کتابخانه PHP، بیش از ۱۰۰۰ تابع در اختیار دارند. اغلب ما می دانیم که PHP قادر است با پایگاه های داده ارتباط برقرار کند، داده ها را پردازش کند و صفحات پویا ایجاد کند. آنچه که بیشتر ما در مورد قدرت PHP نمی دانیم این است که PHP قادر است با مکرومدیا فلش، تصاویر و فایل های قابل حمل (.pdf) کار کند، کلمه های عبور را از نظر قابل حدس بودن بررسی کند و پیچیده ترین عبارات رشته ای منظم را پردازش کند.

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

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

● اشکالات

PHP نیز مانند بسیاری از زبان های اسکریپت نویسی، مساله خوانایی کد را در درجه اول اهمیت قرار داده است. به این ترتیب اسکریپت های PHP در زمان اجرا کامپایل می شوند. این امر با افزودن یک مرحله اضافه به اجرای برنامه، سرعت اجرا را کاهش می دهد. با این حال، هم اکنون نرم افزارهایی به نام بهینه ساز کد۷ وجود دارند که با کاهش اندازه و ایجاد تغییراتی در کد، می توانند زمان اجرا و کارایی برنامه را افزایش دهند.

هم اکنون PHP روی بیش از ۲۰ میلیون وب سایت و یک میلیون وب سرور نصب شده است. جدیدترین نسخه PHP نسخه ۵.۲.۶ است که در تاریخ اول ماه می سال ۲۰۰۸ منتشر شد و شما می توانید آن را به طور رایگان از سایت زیر دریافت کنید: دیدن لینک ها برای شما امکان پذیر نیست. لطفا ثبت نام کنید یا وارد حساب خود شوید تا بتوانید لینک ها را ببینید.
امضاء شاهین سمیع عادل
دیدن لینک ها برای شما امکان پذیر نیست. لطفا ثبت نام کنید یا وارد حساب خود شوید تا بتوانید لینک ها را ببینید.
/ دیدن لینک ها برای شما امکان پذیر نیست. لطفا ثبت نام کنید یا وارد حساب خود شوید تا بتوانید لینک ها را ببینید.

دیدن لینک ها برای شما امکان پذیر نیست. لطفا ثبت نام کنید یا وارد حساب خود شوید تا بتوانید لینک ها را ببینید.

طراحی وب سایت شرکتی ، شخصی ، فروشگاهی ، انجمن های گفتگو
دیدن لینک ها برای شما امکان پذیر نیست. لطفا ثبت نام کنید یا وارد حساب خود شوید تا بتوانید لینک ها را ببینید.
: دیدن لینک ها برای شما امکان پذیر نیست. لطفا ثبت نام کنید یا وارد حساب خود شوید تا بتوانید لینک ها را ببینید.

مشاهده‌ی وب‌سایت کاربر یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ بازگشت به بالا
 سپاس شده توسط Reza Ganji ، btheme ، lian ، razie ، geray
ارسال پاسخ 


پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 1 مهمان