تعداد بازدید: 267

امکانات command line در php

php یک زبان برای embed (جاسازی) به فرمت HTML می باشد. در عین حال command line interface نیز دارد و می توان مثل تمامی زبان های دیگر از طریق محیط ترمینال نیز با آن ارتباط برقرار کرد. تمامی برنامه های آن با دستور php اجرا می گردد.

برای اجرای فرمان php باید مسیر اجرایی فایل php را در سیستم عامل به لیست دستورات معرفی کرده باشید (در ویندوز PATH و در یونیکس .bash_profile).

SAPI (Server Application Programming Interface) : یک ماژول در ارتباط مستقیم با وب سرویس مثلا Apache Http Server

php command options

برخی دستورات command line در php به شرح زیر می باشد:

نمایش ورژن php :

نمایش تنظیمات مربوط به php یا همان php.ini در console :

دستور خط دوم خروجی را به دستور بعدی فرستاده و در دستور بعد در میان خروجی به دنبال EXPRESSION می گردد . به طول مثال دستور php -i | grep "mysql” یعنی تنظیماتی که مربوط به mysql است را نمایش بده.

نمایش ماژول های فعال در php :

ماژول های فعال نظیر PDO , pdo_mysql , pdo_sqlite را نمایش می دهد.

نمایش جزئیات تابع php :

نمایش جزئیات یک کلاس php :

Interactive shell

یک shell برای اجرای کد های php وجود دارد که با اجرای دستور زیر فعال می گردد.

در زمان این که shell را به اجرا در می آورید متغیر ها و توابع شما در حافظه RAM ذخیره می گردد و تا زمانی که ctrl + c را نزنید و shell را cancel نکنید حافظه آزاد نمی گردد.

Built-in web server

می توانید با کمک دستور زیر یک وب سرویس برای تست کد با کمک php ایجاد کنید :

به طور مثال یک سرویس لوکال در پورت 8000 با دستور زیر ایجاد می کنیم :

اگر در مرورگر آدرس http://localhost:8000 را وارد کنید فایل های داخل مسیر آن اجرا می گردد. با استفاده از پارامتر -t می توانید مسیر وب سرویس را تغییر دهید.

Input/output streams

I/O یا همان ورودی و خروجی از دستگاه در زمان اجرای دستور php قابل انجام می باشد. دو تعریف مهم :

STDIN : جریان ورودی جاری یا استاندارد (Standard Input Stream).

STDOUT : جریان خروجی استاندارد (Standard Output Stream)

مثلا ما در جریان اجرای یک برنامه php یک سری ورودی برای تحلیل لازم داریم با توجه به تابع مورد نظر از دستگاه استاندارد ورودی (معمولا کیبورد) در console ترمینال می گیریم و پس از آن می توان در خروجی دستگاه (STDOUT) یک stream رو چاپ کنیم.

توابع کار بار ورودی و خروجی ها بدون فرمت (Unformatted Stream)

fread : برای گرفتن اطلاعات . زمانی که به جای پارامتر اول (resource) که فایل می باشد STDIN را بگذاریم داده های ورودی را می خواند.

به اندازه length می خونه و بر می گردونه . در کد ما باید در یک متغیر ذخیره کنیم.

fwrite : برای نمایش در خروجی . زمانی که به جای پارامتر اول که فایل می باشد STDOUT را بگذاریم.

توابع کار بار ورودی و خروجی های فرمت شده (Unformatted Stream)

fscanf : برای خواندن ورودی از STDIN و ذخیره در متغیر

پارامتر دوم فرمت ها و پارامتر سوم به بعد متغیر هایی که فرمت نظیر آن ها در پارامتر دوم تنظیم شده است.

فرمت های معمول :

  • %d : اعداد صحیح یا Integer
  • %s : رشته ها
  • %f : اعداد اعشاری یا float

fprintf : برای نوشتن در خروجی با فرمت خاص

توابع کار بار فایل با resource برابر با یکی از موارد STDIN , STDOUT را می توان در console استفاده کرد.

مثال نمایش محیط یک مستطیل که برابر با طول و عرض می باشد در محیط command line :

بعد از اجرای فایلی که کد بالا را در خود دارد طول و عرض از کاربر گرفته می شود و در نهایت محیط به او نمایش داده می شود.

مطالب مشابه

هدر های Http در درخواست و پاسخ

Http Headers (قسمت دوم)

http headers حاوی اطلاعاتی در رابطه با نوع درخواست ما می باشند. همچنین یک نوع رابط میان درخواست کلاینت و پاسخ سرور در...

افزونه CURL در PHP

برای ایجاد یک درخواست راه های متفاوتی وجود دارد. اگر درخواست از نوع GET باشد راه های ساده تری نظیر تابع...

xml in php , dom document

کار با XML در PHP

XML مخفف (eXtensible Markup Language - زبان نشانه گذاری توسعه پذیر) طراحی شده برای ذخیره و انتقال اطلاعات می باشد. XML...

رابط mysqli , pdo

رابط mysqli و PDO

عموما DBMS ها یک رابط Command line برای دستکاری پایگاه داده در اختیار کاربر قرار می دهند. همانند تمامی پروتکل های...

اشتراک گذاری :

مدیر وب سایت گنوتک . برنامه نویسی رو با زبان C در هفده سالگی شروع کردم . در حال حاضر به برنامه نویسی php برپایه معماری MVC , HMVC و همچنین سیستم مدیریت محتوای WordPress و فریم ورک محبوب لاراول علاقه مند هستم و دوست دارم اطلاعاتم رو با شما به اشتراک بگذارم.

۰ دیدگاه برای امکانات command line در php

دیدگاهتان را بنویسید

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