آموزش php بخش دوم : ساختار و امکانات

آشنایی با ساختار و امکانات php :

طبق مطالب درس قبلی،می توان گفت تقریبا 99 درصد نیازهای برنامه نویسی تحت وب در php برطرف شده. پی اچ پی از یک کتابخانه ي کامل و غنی برخوردار است که شامل توابعی است که امکان پردازش اطلاعات فرمها، کار با بانکهاي اطلاعاتی، فایلهاي متنی و باینري، فایلهاي گرافیکی، ZIP ،PDF و پروتکلهاي DNS ،FTP ،TCP ،SMTP و … را براي برنامه نویسان فراهم میکند و در مقایسه با ASP که به طور مستقل امکان Upload File ،ارسال ایمیل یا کار با فایلهاي باینري را ندارد، می توان به ارزش و اهمیت این زبان پی برد. همچنین PHP یکی از بهترین پشتیبانیها را از نرمافزارهاي بانک اطلاعات دارد. mySql,Sql Server,mSql,dBase,Oracle,IBM DB2,PostgreSQL,InterBase  و دیگر نرم افزارها در پی اچ پی قابل استفاده هستند و البته امکان کار با ODBC و COM برا ي استفاده از بانکهاي Ms Access و دیگرمحصولات نیز هست. قدرت زبان پی اچ پی تنها در کتابخانه توابع آن نیست، پشتیبانی بسیار خوب از برنامهنویسی شیءگرا (OOP) 1  و سهولت کار با متغیرها از مزایاي درونی پی اچ پی می باشد.

نقاط ضعف اندک یا سلیقه برنامه نویسان در php :

حال که از محاسن PHP نوشتیم، خالی از لطف نیست که اشارهاي نیز به برخی معایب اندک آن هم داشته باشیم. نحو، دستورات (syntax) زبان PHP بسیار شبیه به زبان برنامه نویسی ++C و Perl است. با وجود اینکه این امر باعث استقبال آن توسط برنامه نویسان C وPerl می شود، اما این نحو با سلیقه و روحیات بسیاري از طراحان صفحات وب سازگار نیست و بسیاري معتقد هستند که تکنولوژي ASP و زبان VBScript آسانتر و مفهومی تر می باشد و همچنین JSP و زبان جاوا نیز به دلیل محبوبیت و ساختار قدرتمندش مورد توجه بسیاری است.

 مقایسه php با Perl CGI

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

“پی اچ پی” یک زبان طرف میزبان (server side) است ، براي مثال مدیریت و ساماندهی اطلاعات دریافتی از یک form اچ.تی.ام. ال با PHP به راحتی امکان پذیر است.

1- زبان :

 اگر شما با زبانهاي نظیر ،C , C++ , Perl یا Java کار میکنید، یاد گرفتن زبان PHP میتواند مانند زنگ تفریح باشد! در واقع شما خیلی سریع میتوانید اسکریپت نویسی را با PHP شروع کنید. متغیرها در PHP مانند PHP هستند (با پیشوند $ ) و قابلیت ذخیره انواع مختلف داده ها را دارند. براي مثال whatever$ میتواند انواع داده ها شامل رشته اي ، عددي و غیره را در خود ذخیره کند .

اگر مقدارwhatever$ یک عدد باشد شما میتوانید مقدار آن را به این شکل افزایش دهید: $whatever=$whatever+1; یا $whatever =+1; یا $Whatever++;

 که دقیقا همان روشی است که در Perl ،C++ ،C یا Java به کار می بردید.

 2- تسهیلات توکار (built-in facilities) :

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

در اینجا مثالی را می آوریم که از یک فرم در یک صفحه وب ایمیلی را به آدرس خودمان ارسال میکنیم. به کمک Perl شما احتمالا کدي شبیه زیر را مینویسید :

open ( MAIL,\”|/usr/sbin/sendmail -t\”);

 print MAIL \”To: myself\@mydomain.com\n\” ;

 print MAIL \”From: visitor\@hisdomain.com\n\” ;

 print MAIL \”Subject: Comments from Web Form\n\n\” ;

 print MAIL $mainmessage ; close ( MAIL ) ;

حال می خواهیم همین کار را با زبان php انجام دهیم :

<?php

mail ( ‘myself@mydomain.com’, ‘Comments from Web Form’,

$mainmessage, ‘From: visitor@hisdomain.com’);

?>

به راحتی می توان تفاوت این دو زبان در سهولت شیوه نوشتاری را متوجه شد. این سادگی و روانی براي بقیه کارها هم صادق است ، مانند فرستادن یا بازیابی یک پرونده با FTP یا HTTP. همانطور که گفته شد این سادگی از آنجا ناشی میشود که PHP فقط براي برنامه نویسی براي صفحات وب طراحی شده است. قابلیت های دیگر php در اداره کردن input هاي یک form است ، براي مثال یک فرم مانند زیر را در نظر بگیرید:

<input type=text name=\”dateofbirth\”>

حال به راحتی می توان به محتویات این فرم در متغیر dateofbirth$ دسترسی پیدا کرد و نیازي به تجزیه ، تحلیل ورودی “input” هاي فرم نیست. تمامی فیلد های یک فرم به صورت خودکار به متغیرهایی تبدیل می گردند که خیلی راحت میتوان به آنها دسترسی داشت.

امیدواریم این آموزش مورد توجه شما قرار گرفته باشد.

شرکت طراحی وب سایت همیاران