curl কমান্ডগুলিকে PHP কোডে রূপান্তর করুন - API অনুরোধের জন্য ব্যবহার-প্রস্তুত PHP cURL কোড তৈরি করুন
"https://api.example.com/data", CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => "", CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 30, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => "POST", CURLOPT_POSTFIELDS => json_encode(["name" => "test"]), CURLOPT_HTTPHEADER => [ "Content-Type: application/json" ], ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; }
এখানে কিছু সাধারণ curl কমান্ড রয়েছে যা আপনি PHP কোডে রূপান্তর করতে পারেন:
curl https://api.example.com/users
curl -X POST -H "Content-Type: application/json" -d '{"name":"John","email":"[email protected]"}' https://api.example.com/users
curl -X PUT -H "Authorization: Bearer token123" -d '{"status":"active"}' https://api.example.com/users/1
curl -X DELETE https://api.example.com/users/1
curl -H "X-API-Key: abc123" -H "Accept: application/json" https://api.example.com/data
PHP-এর cURL এক্সটেনশন HTTP অনুরোধ করার একটি শক্তিশালী উপায় প্রদান করে। এখানে কিছু সাধারণ PHP cURL প্যাটার্ন রয়েছে:
"https://api.example.com/upload", CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => "", CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 30, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => "POST", CURLOPT_POSTFIELDS => [ 'file' => $cfile ], CURLOPT_HTTPHEADER => [ "Authorization: Bearer YOUR_TOKEN_HERE" ], ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; }
"https://api.example.com/data", CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => "", CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 5, // 5 seconds timeout CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => "GET", ]); $response = curl_exec($curl); $err = curl_error($curl); $httpCode = curl_getinfo($curl, CURLINFO_HTTP_CODE); curl_close($curl); if ($err) { echo "cURL Error: " . $err; } else { if ($httpCode >= 400) { echo "HTTP Error: " . $httpCode . "\n"; echo "Response: " . $response; } else { $data = json_decode($response, true); if (json_last_error() === JSON_ERROR_NONE) { // Process JSON data print_r($data); } else { echo "JSON parsing error: " . json_last_error_msg(); echo "Raw response: " . $response; } } }
আপনার curl কমান্ড কপি করুন → ইনপুট বক্সে পেস্ট করুন → রূপান্তরিত PHP cURL কোড পান
true, CURLOPT_ENCODING => "", CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 30, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_HTTPHEADER => [ "Authorization: Bearer YOUR_TOKEN_HERE", "Content-Type: application/json", "Accept: application/json" ], ]; // First request curl_setopt_array($curl, $options + [ CURLOPT_URL => "https://api.example.com/users", CURLOPT_CUSTOMREQUEST => "GET", ]); $response1 = curl_exec($curl); $err1 = curl_error($curl); // Second request with the same session curl_setopt_array($curl, $options + [ CURLOPT_URL => "https://api.example.com/products", CURLOPT_CUSTOMREQUEST => "GET", ]); $response2 = curl_exec($curl); $err2 = curl_error($curl); curl_close($curl); // Process responses $users = json_decode($response1, true); $products = json_decode($response2, true);
আমাদের টুল এই সাধারণ curl অপশনগুলি পরিচালনা করে এবং সেগুলিকে উপযুক্ত PHP cURL কোডে রূপান্তর করে:
উত্তর: জেনারেটেড PHP cURL কোড PHP 5.5 এবং তার উপরের সংস্করণের সাথে সামঞ্জস্যপূর্ণ। পুরানো PHP সংস্করণের জন্য, সামান্য সমন্বয় প্রয়োজন হতে পারে, বিশেষ করে ফাইল আপলোডে ব্যবহৃত CURLFile ক্লাসের জন্য।
উত্তর: হ্যাঁ, জেনারেটেড কোডে cURL এরর-এর জন্য মৌলিক এরর হ্যান্ডলিং অন্তর্ভুক্ত আছে। প্রোডাকশন কোডের জন্য, আপনি আপনার অ্যাপ্লিকেশনের প্রয়োজন অনুযায়ী আরও ব্যাপক এরর হ্যান্ডলিং যোগ করতে চাইতে পারেন।
উত্তর: JSON রেসপন্সের জন্য, রেসপন্সকে একটি PHP অ্যারে বা অবজেক্টে পার্স করতে json_decode() ব্যবহার করুন। অন্যান্য ফরম্যাটের জন্য, আপনি প্রয়োজন অনুসারে র স্ট্রিং রেসপন্স প্রক্রিয়া করতে পারেন।
উত্তর: হ্যাঁ, আপনার PHP ইনস্টলেশনে cURL এক্সটেনশন সক্ষম থাকতে হবে। বেশিরভাগ আধুনিক PHP ইনস্টলেশনে cURL ডিফল্টভাবে সক্ষম থাকে। আপনি আপনার টার্মিনালে php -m | grep curl
দিয়ে চেক করতে পারেন।
উত্তর: PHP-তে ফাইল আপলোডের জন্য, আপনাকে CURLFile ক্লাস ব্যবহার করতে হবে। আমাদের কনভার্টার -F
বা --form
অপশন সহ curl কমান্ডগুলি পরিচালনা করে এবং CURLFile ব্যবহার করে উপযুক্ত PHP কোড তৈরি করে।
উত্তর: PHP-এর cURL এক্সটেনশন কুকি পরিচালনার জন্য বিকল্প প্রদান করে। যখন আপনি কুকি পরিচালনা সহ curl কমান্ড (-b
বা --cookie
ব্যবহার করে) রূপান্তর করেন, আমাদের টুল CURLOPT_COOKIE বা CURLOPT_COOKIEFILE/CURLOPT_COOKIEJAR অপশন ব্যবহার করে সঠিকভাবে কুকি পরিচালনা করে PHP কোড তৈরি করে।
উত্তর: কমান্ড-লাইন curl দ্রুত API পরীক্ষার জন্য চমৎকার হলেও, PHP cURL আপনাকে আপনার PHP অ্যাপ্লিকেশনে সরাসরি HTTP অনুরোধ ইন্টিগ্রেট করতে দেয়। curl-কে PHP-তে রূপান্তর করা PHP উন্নয়নে পরীক্ষা এবং বাস্তবায়নের মধ্যে সেতু তৈরি করতে সাহায্য করে।
PHP দিয়ে কার্যকর API পরীক্ষার জন্য curl কমান্ড বোঝা অপরিহার্য। এখানে আমাদের কনভার্টার যে সাধারণ curl অপশনগুলি সমর্থন করে তার একটি দ্রুত রেফারেন্স রয়েছে:
curl [options] [URL]
-X, --request METHOD
: Specify request method (GET, POST, PUT, DELETE, etc.)-H, --header LINE
: Add header to the request-d, --data DATA
: Send data in POST request-F, --form CONTENT
: Submit form data-u, --user USER:PASSWORD
: Server user and password-k, --insecure
: Allow insecure server connections-I, --head
: Show document info only-v, --verbose
: Make the operation more verbose-s, --silent
: Silent mode--connect-timeout SECONDS
: Maximum time for connectionআমাদের PHP কনভার্টার একাধিক হেডার, প্রমাণীকরণ, ডেটা পেলোড এবং বিভিন্ন অপশন সহ জটিল curl কমান্ডগুলি পরিচালনা করে। শুধু আপনার curl কমান্ড পেস্ট করুন এবং cURL এক্সটেনশন ব্যবহার করে পরিষ্কার, আধুনিক PHP কোড পান।
PHP cURL নিয়ে কাজ করার সময়, দক্ষ এবং নিরাপদ API ইন্টারঅ্যাকশনের জন্য এই সেরা অনুশীলনগুলি অনুসরণ করুন:
২. একাধিক অপশনের জন্য curl_setopt_array ব্যবহার করুন
"https://api.example.com/data", CURLOPT_RETURNTRANSFER => true, CURLOPT_TIMEOUT => 30, CURLOPT_CUSTOMREQUEST => "GET", CURLOPT_HTTPHEADER => [ "Authorization: Bearer token123", "Accept: application/json" ], ]); $response = curl_exec($curl); curl_close($curl);৩. ব্যাপক এরর হ্যান্ডলিং বাস্তবায়ন করুন
"https://api.example.com/data", CURLOPT_RETURNTRANSFER => true, CURLOPT_TIMEOUT => 30, CURLOPT_CUSTOMREQUEST => "GET", ]); $response = curl_exec($curl); $errno = curl_errno($curl); $httpCode = curl_getinfo($curl, CURLINFO_HTTP_CODE); curl_close($curl); if ($errno) { // Handle cURL errors switch ($errno) { case CURLE_OPERATION_TIMEDOUT: echo "Request timed out"; break; case CURLE_COULDNT_CONNECT: echo "Could not connect to server"; break; default: echo "cURL error ({$errno}): " . curl_strerror($errno); } } else if ($httpCode >= 400) { // Handle HTTP errors echo "HTTP error: {$httpCode}"; } else { // Process successful response $data = json_decode($response, true); // Continue processing... }