کاربردهای CURL در پی‌اچ‌پی

کتابخانه لینوکسی و پرقدرت curl کاربردهای متعددی برای کار با پروتکل‌های مختلف دارد. به وسیله آن می‌توان یک ربات انسان‌نما درست کرد که به گشت و گذار در وب می‌پردازد و فرم‌ها(ی فاقد کپچا) را پر می‌کند. می‌تواند اطلاعات و حتی فایل‌ها را به مقصد دلخواه post کند و یا با روش ftp به یک سرور وصل شود و در فایل‌ها تغییرات دلخواه را انجام دهد و …

در زبان محبوب php امکان استفاده از curl به سادگی درون برنامه وجود دارد. مثلا برای ارسال اطلاعات به روش post به یک سرور می‌توان اینگونه عمل کرد:

با استفاده از سرویس آنلاین hurl می‌توانید به صورت ویژوال، پارامترهای cUrl را ست و سپس آن را اجرا کنید و نتیجه را مشاهده نمایید که برای یادگیری و درک curl مفید است.

برای کار کردن با curl کتابخانه‌های متعدد php وجود دارد که کار را بسیار ساده کرده است از جمله:

  • Goutte
    یک کتابخانه جهت گرفتن (grab) صفحات وب که با کمک آن می‌توان برخی اعمال ساده (مثل کلیک روی لینک و ثبت فرم و …) را نیز انجام داد. همچنین با کمک این کتابخانه به سادگی می‌توان بر اساس انتخابگرهای css3 به عناصر و بخش‌های html دریافت شده دسترسی پیدا کرد.
  • Unirest-PHP
    یک کتابخانه ساده دیگر برای راحتی کار با curl جهت دریافت و ارسال اطلاعات و حتی فایل.
  • Requests
    یک کتابخانه مفید و قدرتمند برای ارسال درخواست از طریق curl یا fsockopen (با توجه به در دسترس بودن) برای ارسال انواع درخواست‌های HEAD, GET, POST, PUT, DELETE و PATCH با قابلیت افزودن فایل و …
  • Guzzle
    این کتابخانه پرطرفدار و محبوب، می‌تواند انواع درخواست‌های http را به صورت سریالی و موازی ارسال کند. این کتابخانه به صورت پیش‌فرض از cUrl استفاده می‌کند اما لزوما به آن نیاز ندارد.
    همچنین این کتابخانه قدرتمند امکان دانلود و آپلود استریم را نیز دارد. کار با Keep-Alive و connection pooling (مثلا برای کار با سرورهای node.js) نیز یکی دیگر از قابلیت‌های آن است.

نکته: کتابخانه HttpRequest که در نسخ جدید PHP و همراه آن ارائه شده، کار با CURL را بسیار ساده کرده است که توصیه می‌کنم به قابلیت‌های HttpRequest نگاه کنید…


persianvl در وب سایت های اجتماعی

از این پس میتوانید مطالب سایت را در صفحات وب سایت های اجتماعی نظیر فیسبوک ،توییتر،گوگل پلاس،تلگرام و … نیز دنبال کنید.اگر شما کاربر یکی از این وب سایت ها باشید ،کافی است ما را در یکی از این رسانه ها دنبال کنید تا تازه ترین اخبار ،آموزش ها و پروژه های ما را ببینید.
آدرس ما در فیسبوک ::
https://www.facebook.com/persianvl
آدرس ما در اینستاگرام ::
https://www.instagram.com/persianvl_website/
آدرس ما در توییتر ::
https://twitter.com/persianvl_page
کانال ما در تلگرام ::
https://telegram.me/persianvl