- Edited
Hi @ all!
I was looking for a way to send responses with own content and own status code and found that PhpMaker is using \Slim\Http. Great thing :-)
Unfortunately I am unable to access the response object that will be returned to the Slim framework as I did not find a way to access this object. As far as I code read the code you are trying to give access on the response object by providing the global var $Response. Unfortunately you are assigning a reference to the glabl var placeholder, which does not change the global var itself. Please see example code below. How can I achieve to access this object? Alternatively: How can I reply json data with my own http statuscode?
Thx!
Patrick
// code snippet from api/index.php
//// Set up request/response objects
//global $Request, $Response, $RequestSecurity, $API_ACTIONS;
//$Request = $request;
//$Response = &$response; // <<<<<<<<<<< asssigning reference
//$RequestSecurity = $Api->decodeJWT($request->getHeader($Api->AuthHeader));
//
//// Handle custom actions first
//if (in_array($action, array_keys($API_ACTIONS))) {
// $func = $API_ACTIONS[$action];
// if (is_callable($func))
// call_user_func($func, $request, $response);
// return $response; // <<<<<<<<<<<<<<<<<< returning local object not accessible to me
// abstract example:
namespace {
$globalVar = 'global';
}
namespace myNamespace {
function myMethod() {
$localVar = 'local';
global $globalVar;
echo "localVar = [$localVar]\n";
echo "globalVar = [$globalVar]\n";
echo "GLOBALS = [" . $GLOBALS['globalVar'] . "]\n\n";
$globalVar = &$localVar;
echo "localVar = [$localVar]\n";
echo "globalVar = [$globalVar]\n";
echo "GLOBALS = [" . $GLOBALS['globalVar'] . "]\n";
}
myMethod();
}
// output:
// localVar = [local]
// globalVar = [global]
// GLOBALS = [global]
//
// localVar = [local]
// globalVar = [local]
// GLOBALS = [global]
I am using this on server