1. Go to this page and download the library: Download crell/api-problem library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
crell / api-problem example snippets
use Crell\ApiProblem\ApiProblem;
$problem = new ApiProblem("You do not have enough credit.", "http://example.com/probs/out-of-credit");
// Defined properties in the API have their own setter methods.
$problem
->setDetail("Your current balance is 30, but that costs 50.")
->setInstance("http://example.net/account/12345/msgs/abc");
// But you can also support any arbitrary extended properties!
$problem['balance'] = 30;
$problem['accounts'] = [
"http://example.net/account/12345",
"http://example.net/account/67890"
];
$json_string = $problem->asJson();
// Now send that JSON string as a response along with the appropriate HTTP error
// code and content type which is available via ApiProblem::CONTENT_TYPE_JSON.
// Also check out asXml() and ApiProblem::CONTENT_TYPE_XML for the angle-bracket fans in the room.
$response = new MyFrameworksJsonResponse($problem);
// Or do it yourself
$body = json_encode($problem);
use Crell\ApiProblem\HttpConverter;
$factory = getResponseFactoryFromSomewhere();
// The second parameter says whether to pretty-print the output.
$converter = new HttpConverter($factory, true);
$response = $converter->toJsonResponse($problem);
// or
$response = $converter->toXmlResponse($problem);
use Crell\ApiProblem\ApiProblem;
$problem = ApiProblem::fromJson($some_json_string);
$title = $problem->getTitle();
$type = $problem->getType();
// Great, now we know what went wrong, so we can figure out what to do about it.
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.