'string', 'bool' => 'boolean', 'integer' => 'int', ); public function docMethod($method) { $output = ''; $returnType = $method['return']; $methodName = $method['name']; $cptParameters = 0; $parameters = ''; foreach ($method['params'] as $param) { if (isset($param['optional'])) { $parameters.= '['; } $parameters.= '' . $this->transcodeType($param['type']) . ''; $parameters.= ' '; $parameters.= '' . $param['name'] . ''; if (isset($param['optional'])) { if (isset($param['defaultValue'])) { $parameters.= ' = '; if (is_bool($param['defaultValue'])){ $parameters.= ($param['defaultValue'] === false) ? 'false' : 'true' ; } elseif (is_string($param['defaultValue']) && $param['defaultValue']==''){ $parameters.= "''"; } else { $parameters.= $param['defaultValue']; } } $parameters.= ']'; } $cptParameters++; if ($cptParameters < count($method['params'])){ $parameters.= ', '; } } $output = '' . $this->transcodeType($returnType) . ''; $output.= ' '; $output.= '' . $methodName . '' . ' ( ' . $parameters . ' )'; return $output; } private function transcodeType($type) { if(array_key_exists($type, $this->_transcodeType)){ return $this->_transcodeType[$type]; } else { return $type; } } }