آموزش PHP

آموزش PHP - برای توسعه دهندگان PERL

در این فصل لیستی از شباهت ها و تفاوت های عمده میان PHP و PERL را بررسی می کنیم. این کار به توسعه دهندگان PERL کمک می کند تا PHP را به سرعت درک کرده و از اشتباهات رایج جلوگیری کنند.

شباهت های PHP و PERL

  • زبان برنامه نویسی کامپایل شده: PERL و PHP زبان های اسکریپتی هستند. این بدین معنا است که اجرای مستقل بومی در پیش از حالت اجرا استفاده نمی شود.
  • دستورنگارش (syntax) : دستورنگارش پایه PHP بسیار نزدیک به Perl است، و هر دو با بسیاری از ویژگی های دستور نگارش C به اشتراک گذاشته می شوند. کد به فضای خالی حساس نیست، دستورات توسط سمیکالون ( semicolons ) خاتمه می یابند، و اشکال زدایی دستورات توسط یک بلوک واحد سازماندهی می گردد. فراخوانی توابع با نام تابع آغاز می شود، به دنبال آن آرگومان واقعی محصور شده در پرانتز بوده که با کاما جدا می گردد.
  • Dollar-sign variables (متغیرهای دلار) : همه متغیرهای PHP مانند متغیرهای اسکالر در Perl ظاهر می شوند: یک نام که علامت دلار ($) در مقابل آن قرار دارد.
  • No declaration of variables- این امر همانند t است که در Perl نیاز به تایپ نوع متغیر PHP قبل از استفاده از آن دارید.
  • Loose typing of variables : همانند Perl در متغیرهای PHP نیز هیچ نوع ذاتی به جز ارزش آنها وجود ندارند که در حال حاضر نگهداری می شوند. شما می توانید هر شماره یا رشته را در یک نوع متغیر ذخیره نمایید.
  • Strings and variable interpolation : PHP و Perl تفسیر بیشتری از رشته های دو نقل قولی ("رشته") و تک رشته ای ('رشته') دارند.

تفاوت های PHP و PERL

  • PHP با HTML جاسازی شده است : هرچند ممکن است از اجرای PHP در از آن در خط فرمان استفاده شود، اما به طور معمول به سرور وب مرتبط بوده و برای تولید صفحات وب استفاده می شود. اگر برای نوشتن اسکریپت CGI در Perl از آن استفاده می کنید، تفاوت اصلی در PHP این است که شما دیگر نیازی به چاپ صریح بلوک های بزرگ HTML استاتیک با استفاده از دستورات چاپ و یا Heredoc ندارید و می توانید به سادگی آن را در خارج از بلوک کد PHP بنویسید.
  • بدون متغیرهای @ و٪ : تنها نوع متغیر PHP با علامت دلار ($) آغاز می شود. هر یک از انواع داده ها در زبان را می توان در چنین متغیرهایی مانند اسکالر یا ترکیب آن ذخیره نمود.
  • آرایه ها در مقابل هاش ها : PHP دارای یک نوع داده ای به نام آرایه است که نقش هش و آرایه ها / لیست ها در Perl را ایفا می کند.
  • مشخص کردن آرگومان ها برای توابع : فراخوانی های تابع در PHP بسیار شبیه به فراخوانی های فرعی در Perl است. از سوی دیگر تعاریف تابع در PHP ، معمولا به نوعی به لیستی از آرگومان های رسمی در C یا csse جاوا که در PERL وجود ندارد، نیازمند است. 
  • محدوده متغیر در توابع :  در Perl، دامنه پیش فرض برای متغیرها جهانی یا global است. این بدین معنی است که متغیرهای سطح بالا در زیر فرآیندها قابل مشاهده هستند. اغلب، این امر منجر به استفاده بی نظیر از globals در سراسر توابع می شود. به طور پیش فرض در PHP، محدوده متغیرها در تعاریف تابع local قرار دارند. 
  • هیچ سیستم ماژولی وجود ندارد : در PHP هیچ تمایزی واقعی میان فایل های نرمال کد و فایل های کد استفاده شده به عنوان کتابخانه های وارد شده وجود ندارد. 
  •  به جای next و last از Break و continue استفاده می شود: PHP بیشتر شبیه به زبان C است و با از braak و continue به جای last و next استفاده می کند. 
  • No elsif : یک اختلاف املایی جزئی: elsif پرل همان elseif  در PHP است. 
  • انواع کامنت : علاوه بر کامنت های تک خطی Perl (#) ، PHP کامنت چند خطی (/ * comment * /)  c و کامنت های تک خطی جاوا (comment//) را نیز اضافه می کند. 
  • عبارات منظم (Regular expressions): پی اچ پی یک درایو داخلی خاص برای عبارات منظم ندارد، اما دارای بیشترین سازگاری در توابع بیان منظم خود با Perl است.
در صورتی که سوال و یا نظری دارید، از بخش نظرات با ما در میان بگذارید.

خبـرنــامه

Newsletters

در خبــرنـامه سافت اسکیل عضو شویــد تا جدیدترین هـای سایت را بلافاصله در ایمیل خـود دریافت کنیـد

شما چه نظر و یا سوالی درباره این نوشته دارید؟

مبحث آموزشی

آموزش PHP

Learn PHP

سرفصل ها

پرســیدن سؤال جدید

سؤال های تخصصی خود را از ما بپرسید

دنبال کردن تلگرام کانال سافت اسکیل

https://telegram.me/softskill_ir

عملیات کاربران

خبـرنــامه

Newsletters

در خبــرنـامه سافت اسکیل عضو شویــد تا جدیدترین هـای سایت را بلافاصله در ایمیل خـود دریافت کنیـد

کلیک کنید و سوالات خود را از ما بپرسید
لطفا فرم سوال را پر کنید

سوال شما با موفقیت ثبت شد. برای اینکه بتوانیم به شما اطلاع رسانی کنیم، موارد زیر را وارد کنید:

لطفا چند لحظه منتظر بمانید ...