Skip to content

Instantly share code, notes, and snippets.

@bastman
Created September 18, 2012 10:39
Show Gist options
  • Save bastman/3742518 to your computer and use it in GitHub Desktop.
Save bastman/3742518 to your computer and use it in GitHub Desktop.
rpc server misc/utils (php)
public function parseRpcMethod($rpcMethod)
{
$rpcMethod = '' . strtolower(trim('' . $rpcMethod));
$parts = (array)explode('.', $rpcMethod);
$_parts = array();
foreach($parts as $part) {
$part = ''. ucfirst(trim(''.$part));
$_parts[] = $part;
}
$parts = $_parts;
$rpcMethodName = '' . array_pop($parts);
$rpcClassName = '' . array_pop($parts);
$rpcPackageName = ''. implode('.', $parts);
$phpNamespaceName = str_replace('.', '\\', $rpcPackageName );
$phpClassName = '' . $rpcClassName;
$phpMethodName = '' . strtolower($rpcMethodName);
$phpQualifiedClassName =
implode('\\' , array($phpNamespaceName, $phpClassName));
$phpQualifiedMethodName =
implode('::' , array($phpQualifiedClassName, $phpMethodName));
$result = array(
'rpcMethod' => $rpcMethod,
'rpcPackageName'=> $rpcPackageName,
'rpcClassName'=> $rpcClassName,
'rpcMethodName'=> $rpcMethodName,
'phpNamespaceName' => $phpNamespaceName,
'phpClassName' => $phpClassName,
'phpMethodName' => $phpMethodName,
'phpQualifiedClassName' => $phpQualifiedClassName,
'phpQualifiedMethodName' => $phpQualifiedMethodName,
);
return $result;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment