آموزش ارسال درخواست به صفحه با php

آموزش وب ، PHP ، آموزشات فرعی ،
649 بازدید
آموزش ارسال درخواست به صفحه با php
ارسال درخواست به عنوان یک کاربر توسط php با استفاده از امکان curl بدون نیاز به کاربر و از طرف سیستم

سلام. امروز با یک مطلب تخصصی در خدمت شما هستم. این مطلب مربوط به امکان CURL در php است. CURL یکی از توانایی های سیستم عامل linux است که این امکان را به شما می دهد که با استفاده از سیستم و بدون نیاز به کاربر زنده ، به قسمت های مختلف اینترنت درخواست هایی را ارسال کنید ، پاسخ آن ها را دریافت کنید و بر اساس آن ها کار هایی را انجام دهید. توجه داشته باشید که این کار ها همه به وسیله ی خود سیستم و به صورت خودکار انجام می شود و نیازی به یک کاربر ندارد تا به انجام برسد.

از نظر من CURL یکی از جالب ترین و باحال ترین قسمت های php است. این امکان به شما قدرتی می دهد که وقتی به آن قدرت دست پیدا کنید ، تازه حرف من را می فهمید. عینک

شروع کار با CURL

خب! برای شروع کار با CURL در php ما باید از تابع curl_init استفاده کنیم. این تابع یک نشست برای ارسال درخواست ، ایجاد می کند.

<<<code>>>

$ch = curl_init();

<<</code>>>

ما باید خروجی این تابع را در یک متغیر ذخیره کنیم. زیرا در ادامه ی کار و در استفاده از دیگر توابع curl ما نیاز داریم از این خروجی استفاده کنیم. این خروجی در اصل همان نشست ایجاد شده توسط تابع است.

تنظیمات و آپشن های CURL

قسمت مهم این آموزش اینجاست! ارسال درخواست در curl تنظیمات متفاوتی دارد. یعنی شما می توانید در ارسال header انواع اطلاعاتی که دوست دارید را بفرستید ، صفحه را چاپ کنید یا نکنید ، درخواست ssh ارسال کنید یا نکنید و ... (این موضوعات را متوجه نخواهید شد تا زمانی که دقیقا به آن ها نیاز پیدا کنید.)

تابع curl_setopt برای مشخص کردن این تنظیمات در ارسال درخواست ، کاربرد دارد. برای مشخص کردن این تنظیمات باید به شکل زیر عمل کرد:

<<<code>>>

curl_setopt( $ch , option , value );

<<</code>>>

قسمت قرمز رنگ همان نشستی است که با استفاده از تابع curl_init به دست آمده است و در متغیری به نام ch ذخیره شده است. نام این متغیر را می توانید هر چیز دیگری که دوست دارید بگذارید.

قسمت هایی که زیر آن ها خط کشیده شده است مقادیری است که باید در این تابع مشخص کنید تا یک تغییر جدید در ارسال درخواست ، ایجاد شود.

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

<<<code>>>

$ch = curl_init();

curl_setopt( $ch , CURLOPT_URL , "http://www.toolstheme.ir/" ); // آدرس مورد نظر

$header = array(

   "Accept: text/html", // نوع پاسخ دریافتی از طرف سرور

   "User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:38.0) Gecko/20100101 Firefox/38.0"

);

curl_setopt( $ch , CURLOPT_HTTPHEADER , $header );

curl_setopt( $ch , CURLOPT_RETURNTRANSFER , false );

$source = curl_exec( $ch );

curl_close( $ch ); // بستن نشست curl

<<</code>>>

قسمت قرمز رنگ کار جالبی می کند. این اطلاعاتی که من با header ارسال خواهم کرد ، سیستم را به عنوان یک سیستم با سیستم عامل ویندوز و با مروگر mozila firefox نسخه ی 38 معرفی می کند.

قسمت آبی رنگ اگر مقدار false داشته باشد ، پاسخ دریافتی از طرف سرور را به صورت مستقیم در صفحه نمایش می دهد. اما اگر این مقدار برابر با true باشد ، پاسخ ارسالی نمایش داده نخواهد شد.

قسمت سبز رنگ ، سورس (پاسخ) صفحه ای که به آن درخواست ارسال کرده ایم را باز می گرداند.

امیدوارم این قسمت برای شما مفید بوده باشد. در صورتی که سوالی در این باره دارید در قسمت نظرات همین مطلب بپرسید.

رمز تمام فایل های فشرده
رمز فایل فشرده است.