Introduction¶
The php-sapnwrfc
extension wraps the SAP NW RFC library and
uses the provided methods to allow PHP developers to call
remote-enabled ABAP modules.
If you do not have prior experience with the SAP NW RFC SDK, the lecture of the following articles is highly recommended:
Quick start¶
The following simple example calls the RFC-enabled ABAP module
STFC_CHANGING
and dumps its return value:
<?php
use SAPNWRFC\Connection as SapConnection;
use SAPNWRFC\Exception as SapException;
$config = [
'ashost' => 'my.sap.system.local',
'sysnr' => '00',
'client' => '123',
'user' => 'YOUR USERNAME',
'passwd' => 'YOUR PASSWORD',
'trace' => SapConnection::TRACE_LEVEL_OFF,
];
try {
$c = new SapConnection($config);
$f = $c->getFunction('STFC_CHANGING');
$result = $f->invoke([
'START_VALUE' => 0,
'COUNTER' => 1,
]);
var_dump($result);
/*
* array(2) {
* ["COUNTER"]=>
* int(2)
* ["RESULT"]=>
* int(1)
* }
*/
} catch(SapException $ex) {
echo 'Exception: ' . $ex->getMessage() . PHP_EOL;
}
Read the usage guide for a detailed explanation of the provided interface.
Usage scenarios¶
Not all functionality of the SAP NW RFC SDK has been implemented in this exension (yet). Basically, we distinguish between two scenarios:
Client: Calling ABAP modules from PHP code
Server: Calling PHP code from an ABAP client
Currently, the extension only supports the client scenario, that is calling ABAP function modules from PHP.
It does not support the server scenario at this moment.
Other functionality might also not be available in this extension. If you have special needs, feel free to open an issue or a pull request on GitHub.