// Get result as JSON string
$jsonString = \DDTools\Snippet::runSnippet([
'name' => 'ddMakeHttpRequest',
'params' => [
'requester' => [
'url' => 'https://api.example.com/users',
],
'outputter' => [
'type' => 'metaData',
'convertTo' => 'stringJsonAuto',
],
],
]);
// Now you can use it in JavaScript or save to file
// Get response meta as PHP array
$metaArray = \DDTools\Snippet::runSnippet([
'name' => 'ddMakeHttpRequest',
'params' => [
'requester' => [
'url' => 'https://api.example.com/status',
],
'outputter' => [
'type' => 'meta',
'convertTo' => 'objectArray',
],
],
]);
// Access as array
if ($metaArray['isSuccess']){
echo 'HTTP code: ' . $metaArray['code'];
}
$result = \DDTools\Snippet::runSnippet([
'name' => 'ddMakeHttpRequest',
'params' => [
'requester' => [
'url' => 'https://api.example.com/check',
],
'dataProcessor' => [
// Response contains data about success status
'isCheckForSuccess' => true,
// If value equals to `OK` — it's success, otherwise — failure
'checkValue' => 'OK',
],
'outputter' => [
'type' => 'meta',
],
],
]);
// Now isSuccess will be true only if:
// * CURL request succeeded
// * HTTP code is 2xx
// * Response equals `OK`
if ($result->isSuccess){
// All good!
}
$result = \DDTools\Snippet::runSnippet([
'name' => 'ddMakeHttpRequest',
'params' => [
'requester' => [
'url' => 'https://api.example.com/send',
'method' => 'post',
'data' => [
'message' => 'Hello',
],
],
'dataProcessor' => [
// Response contains data about success status
'isCheckForSuccess' => true,
// Use `success` property to check for success status
'checkPropName' => 'success',
// Value to check for success status
'checkValue' => true,
],
'outputter' => [
'type' => 'metaData',
],
],
]);
// Now meta->isSuccess will be true only if:
// * CURL request succeeded
// * HTTP code is 2xx
// * Response is an object and contains `success` property with value `true` (e. g. `{"success": true}`)
if ($result->meta->isSuccess){
// All good!
}else{
// Something went wrong
}
$result = \DDTools\Snippet::runSnippet([
'name' => 'ddMakeHttpRequest',
'params' => [
'requester' => [
'url' => 'https://api.example.com/send-sms',
'method' => 'post',
'data' => [
'phone' => '+1234567890',
],
],
'dataProcessor' => [
// Response contains data about failure status (e. g. `{"status": "fail"}`)
'isCheckForSuccess' => false,
// Use `status` property to check for failure status
'checkPropName' => 'status',
// Failure status value
'checkValue' => 'fail',
// Extract message from response
'messagePropName' => 'message',
],
'outputter' => [
'type' => 'metaData',
],
],
]);
if (!$result->meta->isSuccess){
// Log error with message from API
error_log('API error: ' . ($result->meta->message ?? 'Unknown error'));
}
$jsonResult = \DDTools\Snippet::runSnippet([
'name' => 'ddMakeHttpRequest',
'params' => [
'requester' => [
'url' => 'https://api.example.com/user',
],
'dataProcessor' => [
// Convert JSON string to PHP object before validation
'convertTo' => 'objectStdClass',
],
'outputter' => [
// Return both data and meta
'type' => 'metaData',
// Convert whole result to JSON
'convertTo' => 'stringJsonObject',
],
],
]);
// Now $jsonResult is JSON string like:
// {"data": {"userId": "123", "userName": "John"}, "meta": {"isSuccess": true, ...}}
// Perfect for AJAX responses or saving to file
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.