كمتر كاربر اینترنت را میتوان یافت كه تاكنون با صفحاتی با پسوند PHP برخورد نكرده باشد و البته این پسوند نامی آشنا برای طراحان و برنامهنویسان وب است.
پی اچ پی (PHP) یكی از محبوبترین و رایجترین زبانهای برنامهنویسی برای ایجاد صفحات پویا در وب است و كمتر خواستهای در محیط وب وجود دارد كه در PHP قادر به انجام آن نباشیم. از ایجاد یك صفحه ساده برای پردازش اطلاعات فرمها، ارتباط با بانكهای اطلاعات، كار با سوكتهای TCP، پردازش فرمتهای PDFوZIP و حتی تصویر بخشی از توانایی این زبان است.
پی اچ پی چگونه كار میكند؟
نوشتن یك برنامه پی اچ پی شبیه ایجاد یك صفحه HTML است و تنها با این تفاوت كه كدهای این زبان در داخل صفحات و دربین كدهای HTML درج میشود و البته طبیعی است كه یك فایل پی اچ پی میتواند تنها شامل كدهای PHP باشد.با توجه به این كه PHP یك زبان طرف سرویسدهنده است، و بنابراین برای اجرا، اسكریپتهای آن باید آنها را به كامپیوتر سرویسدهنده وب (مانند سیستم Windows 2000 و نرمافزار IIS) انتقال دهیم و حالا با تایپ نام فایل آن در گردشگر اینترنت میتوانیم آنرا اجرا و خروجی احتمالی را مشاهده كنیم.
طبیعی است كه در سمت سرویسگیرنده (كاربر سایت)امكان مشاهده كدها وجود ندارد.
پس از درخواست برای اجرای یك اسكریپت PHP فایل حاوی كدهای PHP به برنامه مفسر PHP انتقال داده شده(معمولا php.exe) و این برنامه بعد از تفسیر واجرای اسكریپت ،نتیجه را به سمت كاربر میفرستد.
در زیر نمونهای از یك اسكریت ساده PHP درج شده است. این برنامه پیغام ارسالی توسط كاربر را میگیرد (این پارامتر میتواند توسط یك فرم یا در نوار آدرس گردشگر اینترنت تایپ شود) و آن را در قالب HTML برای كاربر ارسال میكند.
كد HTMLنتیجه حاصل كه كاربر امكان مشاهد آنرا دارد
http://www.mysite.com/test.php?message=hello | اسكریت PHP كه در سمت سرویس دهنده اجرا میشود |
<HTML>
<BODY>
hello
</BODY>
</HTML> | <HTML>
<BODY>
<?php
echo $_GET["message"];?>
</BODY>
</HTML> |
از آنجا كه آموزش این زبان در این مقاله نمیگنجد، بنابراین در ادامه نگاهی به تاریخچه ، مزایا و احتمالا معایب آن خواهیم داشت.
تاریخچه
پی اچ پی در سال 1994 توسط راسموس لردرف Rasmus Lerdorf و برای استفاده شخصیاش ایجاد شد. او بعدها و در سال 1995 نسخه حرفهایتر از مفسر زبان PHP به نام Version 2 PHP/FI را عرضه كرد، و در سال 97 تعداد سایتهایی كه از PHP استفاده میكردند به بیش از 50000 رسید و امروزه نیز میلیونها سایت از آن استفاده میكنند. سایتهای مشهوری چون Alltheweb و mamma از این زبان استفاده میكنند و حتی Yahoo نیز در حال شروع استفاده از این زبان برای توسعه وب سایتهای خود است. پی اچ پی زبانی برای همه سیستم عاملها
یكی از برترین مزایای زبان PHP سازگاری آن با اكثر سیستم عاملها و نرمافزارهای وب سرور (مانند IIS و Apache) است. برخی از دیگر زبانها و تكنولوژیها مانند ASP محدود به سیستم عامل windows است و پشتیبانی از آن در دیگر سیستم عاملها بسیار پرهزینه و محدود است، و برخی نیز مانند JSP مشكلاتی با برخی نرمافزارهای وب سرور دارد.
ساختار و امكانات پی اچ پی به شكل مستقل از سیستم عامل شكل گرفته است و این بدان معنا است كه به طور مثال برنامهنویس میتواند اسكریپت خود را تحت سیستم عامل ویندوز نوشته و تست كند و سپس آنرا بدون تغییر به سیستم عامل یونیكس یا لینوكس انتقال دهد.
در PHP امكان استفاده از برخی از امكانات خاص سیستم عاملهای مشهور نیز در نظر گرفته است كه برای نمونه میتوان از پشتیبانی از تكنولوژی DCOM و یا Windows API نام برد.
نسخههای جدید مفسر PHP سازگار با دیگر تكنولوژیهای خاص وبسرورها مانند ISAPI نیز میباشد. پی اچ پی رایگان و Open Source
تهیه برنامه مفسر PHP برای همه سیستم عاملها رایگان است و علاقهمندان میتوانند آخرین نسخه مفسر این زبان را از سایت رسمی PHP بارگذاری (Download) كند.
همچنین امكان تهیه رایگان سورس مفسر پی اچ پی نیز فراهم است ، و این مسئله علاوه بر این كه در گسترش امكانات این زبان بسیار موثر بوده است، مزیتی برای شركتها و توسعهدهندگان برای انتخاب این زبان است چرا كه پشتیبانی و اعتماد به آن را راحتتر كرده است.
بسیاری از ویرایشگرهای حرفهای این زبان نیز یا رایگان هستند و یا با هزینه بسیار كم میتوان آنها را تهیه كرد، در حالی كه دیگر تكنولوژیها، مثلاً تهیه پلاتفورمهای جاوا هزینه هنگفتی دارد و همچنین كار حرفهای با تكنولوژی .NET نیز نیاز به تهیه Visual Studio.NET و پرداخت هزینه چند صد دلاری است.
" " |
پی اچ پی (PHP) یكی از محبوبترین و رایجترین زبانهای برنامهنویسی برای ایجاد صفحات پویا در وب است و كمتر خواستهای در محیط وب وجود دارد كه در PHP قادر به انجام آن نباشیم. از ایجاد یك صفحه ساده برای پردازش اطلاعات فرمها، ارتباط با بانكهای اطلاعات، كار با سوكتهای TCP، پردازش فرمتهای PDFوZIP و حتی تصویر بخشی از توانایی این زبان است. |
" " |
سرعت بالای تفسیر و اجرای PHP
پی اچ پی یكی از سریعترین زبانها در نوع خود است. تفسیر و اجرای یك اسكریپ php به طور متوسط تا سه و چهار برابر یك اسكریپ ASP است. (البته باید در نظر داشته باشیم كه IIS با Cach اسكریپتهای ASP سرعت اجرای آنها را در دفعات بعد بالا میبرد)
همچنین در ASP استفاده زیادی از اشیا COM میشود كه باعث كاهش سرعت و مصرف منابع سیستم میشود در حالی كه در PHP بسیاری از امكانات و حتی برقراری ارتباط با یكی محبوبترین نرمافزار مدیریت بانكهای اطلاعاتی (mySql به صورت توكار نهاده شده است.
شركت Zend كه تهیه كننده فعلی موتور مفسر و پشتیبانی كننده آن است، محصولات دیگری را نیز در جهت بهینه كردن سرعت اجرای PHP ارائه كرده است این محصولات با افزایش سرعت تفسیر و همچنین ذخیره كردن نتیجه تفسیر (Cash) باعث افزایش چندین برابر اجرای آن میشوند.
ساختار مناسب و امكانات بالا در PHP
همان طور كه در ابتدای مقاله اشاره شد، كمتری نیازی در برنامهنویسی تحت وب وجود دارد كه در PHP امكان رفع آن نباشد. پی اچ پی شامل كتابخانهای غنی از توابعی است كه امكان پردازش اطلاعات فرمها، كار با بانكهای اطلاعاتی، فایلهای متنی و باینری، فایلهای گرافیكی، PDF ، ZIP و پروتكلهای TCP ، FTP ، DNS ،SMTP و ... را برای برنامهنویس فراهم میكند، این را مقایسه كنید با ASP كه به طور مستقل امكان Upload File ،ارسال ایمیل یا كار با فایلهای باینری را ندارد.
همچنین PHP یكی از بهترین پشتیبانیها را از نرمافزارهای بانك اطلاعات دارد. mySql,Sql Server,mSql,dBase,Oracle,IBM DB2,PostgreSQL,InterBase و بسیاری از نرمافزارهای دیگر در پی اچ پی قابل استفاده هستند و البته امكان كار با ODBC و COM برا ی استفاده از بانكهای Ms Access و دیگرمحصولات نیز هست.
قدرت زبان پی اچ پی تنها در كتابخانه توابع آن نیست، پشتیبانی بسیار خوب از برنامهنویسی شیءگرا (OOP) و كار آسان و سریع با متغیرها از مزایای دورنی این زبان است.
معایب
حال كه از حسن PHP گفتیم، بد نیست اشارهای نیز به برخی معایب آن داشته باشیم.
نحو (syntax) زبان PHP بسیار شبیه زبان C++ و Perl است. این اگر چه باعث استقبال از این زبان توسط برنامهنویسان C و یا Perl شد، اما این نحو برای بسیاری از طراحان صفحات وب چندان آسان نیست و بسیاری معتقد هستند كه تكنولوژی ASP و زبان VBScript آسانتر و قابل دركتر است و همچنین JSP و زبان جاوا نیز به دلیل محبوبیت و ساختار قدرتمند آن مورد توجه است.
یك اشكال دیگر PHP عدم پشتیبانی خوب آن از یونیكد و به خصوص زبان فارسی است، حتی آخرین نسخههای این زبان نیز امكان سورت(Sort) صحیح متون فارسی را ندارد. البته این اشكال با كامپایل مجدد یا كمی برنامهنویسی قابل حل است.
سلطانیه در دوره قاجار به دنبال جنگهای میان ایران و روس، به دلیل موقعیت سوق الجیشی مركز تشكیل و تجمع نیروهای ایران در مقابل روسیه شد و به همین سبب در این دوران نسبت به قبل مورد توجه بیشتری قرار گرفت.
فتحعلیشاه قاجار نیروهای خود را در عرصه چمن سلطانیه متمركز ساخت و در همین زمان سلطانیه صحنه تردد سفرا و نمایندگان سیاسی و دیپلماتهای خارجی شد.
به گفته سیاحان این دروه، شاه قاجار به فكر ساخت شهری جدید به نام سلطان آباد افتاد كه در آن قصری تابستانی بنا كند، فتحعلیشاه كاخی ساخت كه ظاهراً در باغ زیبایی احاطه شده و بر روی تپهای واقع در سه كیلومتری شهر قدیم ساخته شده بود.
ساخت بناهای جدید توسط شاه قاجار منجر به تخریب تدریجی آرامگاه اولجایتو شد، بردن مصالح و مواد بنای گنبد سلطانیه برای ساخت تفرجگاه شاه و تبدیل آن بنای با شكوه به انبار علوفه و حشم، آثار نامطلوبی بر این اثر زیبای تاریخی گذاشت كه سبب ویرانی آن در آینده نزدیك شد.
به گفته فلاندن كه در زمان محمد شاه قاجار به ایران سفر كرده، سلطانیه و كاخ نوپای فتحعلیشاه به دست فراموشی سپرده و مخروبه و غیر مسكون شده است.
نقطه اوج اعتلای سلطانیه در دوره ناصر الدین شاه قاجار با كشیدن سیم تلگراف از تهران به سلطانیه بود. در این زمان ناصرالدین شاه نسبت به بازسازی گنبد و دیگر آثار شهر اقداماتی انجام داد.
به رغم اینها در این زمان سلطانیه مامن مهاجران و مردمان بیخانمانی بود كه در اثر شدت سرما در بنای تاریخی گنبد سلطانیه پناه برده بودند.
جمعیت و آبادانی سلطانیه در این زمان تقریباً به حداقل خود رسیده و تنها جمعیت آن 300 خانوار و دارای حمام، مسجد و یك یخچال است.
ADSL پهنای باند 1.1 مگاهرتزی خطوط مسی را به کانال های 4 کیلوهرتزی تقسیم می کند و آخرین کانال را جهت ارسال صدا و فاکس معمولی تخصیص می دهد و 256 کانال دیگر را برای انتقال دو طرفه اطلاعات استفاده می کند ; به این ترتیب که 64 کانال را برای خط ارسال اطلاعات و 128 کانال دیگر را جهت دریافت اطلاعات استفاده می کند. در بهترین حالت اگر 192 کانال 4 کیلو هرتزی موجود را استفاده کند، در تئوری سرعت باید به حدود 9 مگابیت در ثانیه برسد.
ADSL یکی از خانواده های Digital Subscriber Line) DSL) یا همان خطوط دیجیتال استیجاری می باشد. اعضای DSL معمولا به صورت xDSL نامگذاری می شوند. این خطوط از تمامی پهنای موجود در خطوط مسی دوطرفه استفاده میکنند تا بالاترین سرعت ممکن در ثانیه را بر خلاف خطوط معمول ارائه دهند.ADSL) Assymetric DSL) در واقع نوعی از DSL ها می باشد که ارتباط آن نامتقارن می باشد ; یعنی سرعت ارسال داده در ثانیه کمتر از دریافت آن میباشد . انواع دیگری از xDSL ها موجود میباشند که از جمله آنها می توان به (SDSL (Sytemtric DSL و HDSL (High-Speed DSL) اشاره کرد.
در حال حاضر سرعت خطوط ADSL در بهترین حالت 2 مگابیت در ثانیه می باشد.در عمل، این خطوط اطلاعات زنجیره وار دیجیتال را به اطلاعات پارالل در دو سر انتقال اطلاع تبدیل می کنند. دقیقا مشابه کاری که در مودم های خطوط عادی انجام می شود.
سرعت انتقال اطلاعات در محدوده ذکر شده به عواملی از جمله فاصله ارتباطی و نوع سیم استفاده شده بستگی دارد.
منبع : IRITN