img

شروع به کار با زبان برنامه نویسی محبوب PHP

/
/
/

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

اگر شما به بررسی تکنولوژی های وب علاقه مند هستید و تمایل دارید که از میزان سهم بازار زبان های اسکریپت نویسی سمت سرور (server-side) مطلع شوید، قطعا شگفت زده خواهید شد هنگامی که متوجه شوید به طور میانگین ۷۰ درصد از وب سایت های اینترنتی از زبان php  استفاده می کنند.

بر طبق اطلاعات بدست آمده از وب سایت wtechs.com، در میان تمام زبان های برنامه نویسی شناخته شده سمت سرور، php با میزان استفاده ۸۲٫۷ درصد در وب سایت های اینترنتی بیش از سایرین به کار برده شده است. در مراحل اولیه، حتی سرورهای فیسبوک برای اجرای برنامه های شبکه اجتماعی خود زبان php  را پیاده سازی کرده بودند. با این وجود، این روزها دغدغه ای در مورد ترافیک وب که توسط php  میزبانی میشود وجود ندارد.

به طور متناوب، ما برای درک توسعه، تاریخچه و مزایا و معایب به طور عمیق می بایست به کاوش در مورد این زبان می پردازیم. در انتها، ما نگاهی مختصر به برخی از محیطهای توسعه یکپارچه شده منبع باز (open source IDE) می اندازیم که شما می توانید از آن برای توسعه سریع استفاده کنید. 

اول از همه، باید درک کنیم که php  چیست. php مخفف واژه های Hypertext Pre-processor است و کمی گیج کننده به نظر می رسد. در واقع، نام اولیه php  صفحه خانگی شخصی (Personal Home Page) بوده و از این رو این نام مخفف برای آن در نظر گرفته شده است. php  زبان برنامه نویسی سمت سرور است که عمدتاً برای بهبود ظاهر و بازخورد صفحات HTML مورد استفاده قرار می گیرد. نمونه ای از کد php  که در داخل زبان HTML  به کار رفته است را می توانید در زیر مشاهده کنید: 

<!DOCTYPE HTML>                                

<html>                                                      

<head>                                                   

<title>Example</title>         

</head>                                            

<body>                                              

<?php                                        

echo “I am PHP script!”; ?> </ ody> </html>                                                   

 

در مثال فوق، شما می توانید ببینید که چگونه با استفاده از علائم <?php و ?> می توان کد php  را در داخل کد HTML به کار برد. این امر به شما اجازه می دهد تا بتوانید در میان کدهای php و HTML حرکت کنید. زبان php  با زبان های اسکریپت نویسی سمت کلاینت (clined-side) همانند JavaScript  تفاوت دارد و کدهای آن با کمک مفسر php  (php interpreter) بر روی سرور اجرا می شوند و نتیجه آن توسط کدهای HTML به رایانه درخواست کننده ارسال می شود. با وجود کاربردهای زیاد زبان php  از قبیل ایجاد فرم ها برای تولید محتوای وب به صورت پویا و ارسال و دریافت کوکی ها و سایر موارد، سه حوزه اصلی وجود دارد که در آنها اسکریپت های زبان php  به طور معمول به کار گرفته می شوند: 

* اسکریپ نویسی سمت سرور (server-side scripting) : کاربرد و هدف اصلی زبان php  مربوط به همین حوزه است. شما برای مشاهده خروجی php صفحات وب بر روی دستگاهتان نیاز به یک مرورگر وب، یک سرور وب و یک تجزیه کننده php  (php parser) دارید. 

* اسکریپ نویسی خط فرمان (command-line scripting) : اسکریپت های زبان php می تواند حتی بدون سرور و یا مرورگر ولی با کمک تجزیه کننده php اجرا شوند. این امر بیشتر برای وظایفی که زمان زیادی را به خود اختصاص می دهد مناسب تر است. برای مثال، ارسال خبرنامه برای هزاران پرونده، تهیه نسخه پشتیبان از پایگاه های داده و انتقال فایل های حجیم از یک مکان به مکانی دیگر از جمله کاربردهای اسکریپت نویسی خط فرمان محسوب می شود. 

* ایجاد برنامه های دسکتاپ (desktop application) :

زبان php  همچنین می تواند برای ساخت و توسعه برنامه های مبتنی بر دسکتاپ همراه با رابط گرافیکی کاربر (GUI)  استفاده شود. با وجود نقاط ضعف زیاد، شما می توانید از افزونه ای قابل دسترس برای php با عنوان PHP-GTK استفاده کنید. 

 

نکته : آیا می دانستید که php همانند تیم های ورزشی طلسم شده است ؟ طلسم php یک فیل بزرگ آبی با نام elePHPant  است. 

 

PHP و HTML – مشابه اما متفاوت 

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

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

در زیر لیستی از تفاوت ها و شباهت های این دو زبان برای درک بهتر نمایش داده شده است.

 

تاریخچه و رشد زبان php

تاریخچه رشد و توسعه زبان php  به سال ۱۹۹۴ برمیگردد. در آن سال، یک برنامه نویس دانمارکی – کانادایی با نام Rasmus Lerdorf  اسکریپت هایی از زبان perl  را با نام « ابزارهای صفحات خانگی شخصی « ایجاد کرد که به منظور ساخت صفحات وب شخصی مورد استفاده قرار می گرفت.

در سال بعد، این ابزارها تحت نام « صفحه شخصی خانگی / مفسر فرم ها « (Personal Home Page / Forms Interpreter) منتشر شد که در فولدر     CGI-bin  (محل نگهداری اسکریپت هایی که با مرورگر وب تعامل دارند ) قرار داده شده بود. این ابزارها پشتیبانی از پایگاه های داده و فرم های وب را فراهم می کردند و پس از انتشار آنها در سرتاسر جهان، زبان php را تحت تاثیر اصلاحات و تغییراتی قرار دادند که در نتیجه آن،  نسخه دوم از « صفحه شخصی خانگی / مفسر فرم ها « در نوامبر سال ۱۹۹۷ منتشر شد.

در ادامه، php 3 ، php4 و php 5  نیز به ترتیب در سال های ۱۹۹۸، ۲۰۰۰ و ۲۰۰۴ ارائه شدند. 

امروزه بیشترین نسخه مورد استفاده از این زبانphp 5  است و حدود ۹۳ درصد از وب سایت هایی که از php  بهره می برند از این نسخه استفاده می کنند ؛ هرچند که php 7  نیز در بازار موجود است.

در سال ۲۰۱۰ نیز php 5.4 منتشر شد که قابلیت پشتیبانی از Unicode  به آن افزوده شده بود. 

 

مزایا و معایب زبان php

قبل از اینکه بخواهیم بیشتر در مورد توسعه و رشد زبان php  صحبت بکنیم ، در زیر به برخی از مزایا و معایب استفاده از آن در توسعه وب نگاهی می اندازیم : 

 

مزایا : 

* در دسترس بودن : بزرگترین مزیت زبان php این است که به صورت Open Source  قابل دسترس است و بنابراین افراد می توانند به منظور پشتیبانی و احتیاج به کمک، جامعه ای بزرگ از توسعه دهندگان را پیدا کنند .

* پایداری : زبان php از سال ۱۹۹۵ مورد استفاده قرار گرفته است و نسبت به سایر زبان های اسکریپت نویسی سمت سرور کاملاً پایدارتر است و همچنین از آنجایی که کدهای این زبان به صورت Open Source   ارائه می شود اگر هر گونه خطایی در این کدها یافت شود، می توان به راحتی آن را تصحیح کرد .

* کتابخانه های گسترده (Extensive Libraries) : هزاران کتابخانه وجود دارد که توانایی ها و قابلیت های زبان php را بهبود می بخشد.  برای مثال می توان به فایل های PDF، نمودارها، فیلمهای فلش و سایر موارد اشاره کرد. زبان php از ماژول های آماده استفاده می کند و بنابراین لازم نیست که شما همه چیز را از ابتدا بنویسید. شما می بایست ماژول مورد نیاز را در کد خود اضافه کرده و سپس برای شروع به کار آماده شوید. 

* ماژول های موجود در داخل این زبان : در صورت استفاده از php ، افراد می توانند با بهره گیری از ماژول های داخل این زبان، به آسانی به پایگاه داده متصل شوند و همچنین این امر نیز به طرز چشمگیری به کاهش زمان توسعه و سعی و تلاش توسعه دهندگان وب کمک بسیاری می کند. 

* قابل استفاده بر روی انواع مختلفی از سیستم‌های عامل : php  در تمام سیستم عامل ها پشتیبانی می شود بنابراین جای نگرانی وجود ندارد که کد نوشته شده بر روی سیستم عامل ویندوز بر روی لینوکس نیز قابل استفاده خواهد بود یا خیر. 

استفاده آسان : برای افراد مبتدی، یادگیری زبان php  راحت است زیرا ساختار کدهای  مطلوب این زبان که مشابه با زبان برنامه نویسی c  است، کد نویسی را برای افرادی که آشنا به زبان c  هستند بسیار ساده تر کرده است. 

 

معایب : 

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

* امنیت : امنیت اطلاعاتی که در صفحات وب به کار می رود به توعی مهمترین دغدغه محسوب می شود. امنیت php می تواند به دلیل ماهیت Open source  بودن آن باشد زیرا هر کس می تواند کدهای منبع آن را مشاهده نموده و خطاهای آن را شناسایی کند.

بنابراین، در صورت کار با اطلاعات حساس، شما می بایست اقداماتی اضافی برای تضمین امنیت صفحه وب خود انجام دهید. 

نکته : برآورد شده است که به طور تقریبی ۵ میلیون توسعه دهنده php در سرتاسر جهان وجود دارد که این خود نشان از قدرت این زبان دارد. 

 

محیط های توسعه یکپارچه شده منبع باز (Open Source IDE) برای توسعه زبان php 

انتخاب IDE  نقش مهمی را در توسعه هر برنامه یا برنامه های کاربردی بازی می کند اما این مسئله اغلب نادیده گرفته می شود.

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

بنابراین در اینجا چند Open Source IDE  برجسته را که در توسعه php  بسیار مفید است مورد بررسی قرار می دهیم : 

 

۱- NetBeans : اکثر افراد می بایست از کاربرد NetBeans  در توسعه زبان جاوا آگاه باشند اما این IDE  برای توسعه زبان php نیز کاربرد دارد. بزرگترین مزیت استفاده از این IDE  پشتیبانی از زبان های زیادی همچون انگلیسی، چینی، ژاپنی و … است و می توان آن را به راحتی بر روی هر سیستم عاملی نصب کرد.

برخی از ویژگی هایی که این IDE  را از سایرین متمایز می کند شامل تکمیل کد هوشمند، بازسازی، تکمیل کد try/catch و قالب بندی می شود.

همچنین این محیط توانایی پیکربندی فریم ورک های متفاوت php  از قبیل Smarty، Doctrine  و سایر موارد را داراست. شما در صورت تمایل می توانید این IDE  را از وب سایت netbeans.org دریافت کنید. 

 

۲-Eclipse : در صدر لیست محبوب ترین محیطهای IDE  قرار دارد. اگر در گذشته با Eclipse  کار کرده اید واز Eclipse PDT برای توسعه php  استفاده کرده باشید احساس راحتی خواهید کرد. این IDE    می تواند از مسیر eclipse.org/pdt قابل دریافت باشد. برخی از ویژگی های آن همانند برجسته سازی ساختار کدها (Syntax highlighting)، اشکال زدایی، قالب های آماده  (template)، اعتبار سنجی طرز نوشتاری و مدیریت آسان کد از طریق پنجره Windows Explorer قابل دسترس است.

این IDE می تواند در سیستم عاملهای متفاوتی همانند ویندوز، لینوکس و Mac OS مورد استفاده قرار بگیرد. از آنجا که این محیط از طریق جاوا تولید شده و توسعه یافته است، شما باید آن را در دستگاه خود نصب کنید. 

 

۳- PHPStorm :   توسط شرکت JetBrains  توسعه داده شده است (همچنین این شرکت IntelliJ IDEA را برای زبان جاوا تولید کرده است). عمدتاً این IDE  برای اهداف حرفه ای مورد استفاده قرار        می گیرد اما برای دانشجویان، معلمان و پروژه های Open Source ، این محیط به صورت بدون مجوز (License – free) نیز در دسترس است.

این محیط دارای به روز ترین مجموعه از ویژگی ها به منظور توسعه سریع است و همچنین از تکنولوژی های پیشتازی همانند HTML5، Cofeescript، Javascript و Sass پشتیبانی می کند. این ابزار از اکثریت فریم ورک های موجود در بازار مانند Symfony، CakePHP، Laravel و Zend  پشتیبانی کرده و می تواند با پایگاههای داده، نرم افزارهای کنترل نسخه، کلاینت های دیگر و ابزارهای خط دستور به منظور سهولت کار توسعه دهندگان ادغام شود. تعدادی از شرکت های     چند ملیتی همانند ویکی پدیا، سیسکو و یاهو برای توسعه php از محیط PHPStorm  استفاده کرده اند. برای دریافت اطلاعات بیشتر می توانید به مسیر jetbrains.com/phpstorm مراجعه کنید. 

 

۴- Sublime Text :   اساساً یک ویرایشگر متن محسوب می شود اما با نصب پکیج های گوناگون و در دسترس، می تواند به یک PHP IDE تبدیل شود.

این محیط به واسطه داشتن interface سبک وزن، طراحی زیبا و داران بودن ویژگی های متعدد مشهور است و در تمام سیستم عامل ها این IDE پشتیبانی می شود. بعضی از پکیج هایی که می توان از آن برای تبدیل Sublime Text به یک IDE  استفاده کرد عبارتند از: Sublime PHP Companion، PHPCS، codIntel، Simple PHPunit و…. می توان این محیط را به صورت Open Source  از مسیر sublimetext.com دانلود کرد. 

 

۵- PHP Designer : این IDE فقط برای کاربران ویندوز موجود است و علاوه بر سرعت بالا و قدرت آن، دارای پشتیبانی از PHP، HTML، Javascript و CSS می باشد.

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

این محیط همچنین از فریم ورک های Javascript متفاوت همانند JQuery، ExtJs و Yui پشتیبانی می کند. نسخه Open Source  این IDE نیز در دسترس بوده و برای کسب اطلاعات بیشتر می توانید به وب سایت رسمی آن مراجعه کنید. 

 

۶- NuSphere PHP IDE : یک محیط IDE است که توسط شرکت NuSphere  عرضه شده است. دفتر مرکزی کمپانی NuSphere  در نوادا ایالات متحده بوده و تاریخ ورود به بازار آن به سال ۲۰۰۱ بر می گردد. نسخه ۱۸٫۰ و فعلی PHpED شامل پشتیبانی از PHP 7.0 می شود و به طور تقریبی از تمام فریم ورک های PHP بهره می برد.

این ابزار همچنین توانایی اجرای پروسه های تولید نرم افزار را داشته و با پشتیبانی از تمام تکنولوژی های مبتنی بر وب به صورت پکیج عرضه می شود. شما می توانید این ابزار را از وب سایت www.nusphere.com  دریافت کنید. 

 

۷- Codelobster : نیز برای شما یک IDE  رایگان به منظور توسعه php فراهم می کند. از آنجایی که این ابزار استفاده چندانی ندارد اما به سرعت در حال پیشرفت است.

با دریافت نسخه رایگان این ابزار می توانید از کدهای PHP، JS، HTML و CSS بهره مند شوید و این ابزار همچنین می تواند با فریم ورک های گوناگونی همچون Drupal، WordPress، Symfony و Yii ادغام شود. می توان این IDE را از مسیر

www.codelobster.com

دریافت کرد. 

 

نوشتن اولین برنامه به زبان PHP 

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

(cross-platform (X) Apache (A), MariaDB (M) PHP (P) and Perl (P))

تشکیل می شود.

XAMPP یک وب سرور Open Source  است که میزان استفاده از آن بسیار گسترده است و توسط وب سایت apachefrinds.org توسعه داده شده است.

XAMPP می تواند برای ایجاد یک سرور HTTP محلی بر روی دستگاه ها تنها با چند کلیک مورد استفاده واقع شود و در آموزش زیر از این ابزار استفاده می شود.

 

* آخرین نسخه از XAMPP را بر روی سیستم خود از طریق مسیر

  www.apachefriends.org/download.html دانلود کنید. بعد از اینکه دانلود به اتمام رسید، آن را بر روی دستگاه خود نصب کنید. 

* به صورت پیش فرض، XAMPP بر روی درایو C  دستگاه شما نصب می شود ولی اگر شما دایرکتوری خاصی را برای نصب این برنامه مد نظر دارید به آن دایرکتوری بروید و فولدری با نام PHPDevelopment در فولدر          htdocs در مسیر دایرکتوری نصب برنامه XAMPP ایجاد کنید. برای مثال می توان به آدرس زیر اشاره کرد :       

C:\xampp\htdocs\PHPDevelopment

* اکنون XAMPP control panel را اجرا کرده و بر روی دکمه start کلیک کند تا سرویس Apache شروع به کار کند. 

 

* یک فایل متنی داخل پوشه فوق با نام AddTwoNumbers.php ایجاد کنید و کدهای زیر را در داخل آن کپی کنید. 

<!DOCTYPE HTML>                                

<html>                                                      

<head>                                                   

<title>sum</title>         

</head>                                            

<body>                                              

           <h3> Addition Of Two Numbers </h2> 

<form>

           <div> Number 1: </div>

           <input type=”text” name=”num1”/>

           <div> Number 2 : </div>

         <input type=”text” name=”num2”/>

         <div><br><input type=submit value=”CALCULATE SUM”></dir><br>

</form>

<?php                                        

              if (isset($_GET[`num1`]) && isset($_GET[`num2`]))  { 

             

                         $num1 = $_GET[`num1`];

                         $num2 = $_GET[`num2`];

                         $sum = $num1 + $num2 ;

                         echo “ sum of $num1 and $num2 is $sum ;

}

?>                                               

</body>                                             

</html>                                                   

 

*  اکنون آدرس localhost/PHPDevelopment  را در مرورگر خود تایپ کنید. سپس لیستی از فایلها را همانند تصویر دوم در دایرکتوری خود و در مرورگر مشاهده می کنید .

* با کلیک بر روی فایل AddTwoNumbers.php به صفحه مورد نظر هدایت می شوید و در آنجا می توانید عملیات جمع دو عدد را انجام دهید. 

در اینجا می توانید ببینید که یک فرم با استفاده از HTML ایجاده شده است و جمع اعداد با استفاده از php  انجام می شود.

اکنون توسعه وب را با استفاده از php  آغاز کنید. می توانید همچنین از فریم ورک های مختلف و در دسترس برای ساده تر کردن عملیات توسعه و کاهش زمان کدنویسی استفاده کنید.

 

نظر بدهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

It is main inner container footer text