我想仅记录我在phpDoc
中编写的代码。我使用Laravel 4
作为我的基础MVC
框架。构造代码的好方法是什么,以便我能够在文档中记录我的代码以及所有调用例程(例如,routes.php
)。很明显,我不想在Laravel中记录整个MVC架构。
此外,是否可以在phpDoc
?
答案 0 :(得分:2)
phpDoc可以随时随地使用,特别适用于OOP。
当我们谈论OOP时,我们将函数称为方法,但是,在MVC中,我们通常将函数称为动作。无论如何,你可以遵循这种模式:
<?php
/**
* @method int sum($a, $b)
* @license GPL
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
* @author Your Name <your@email.com>
*/
class Calc
{
/**
* Sums the first value with the second value
*
* @param int|float $a //First Param
* @param int|float $b //Second Param
* @example echo sum(2, 3); //returns 5
* @since 1.1 //Version
* @return int|float $result //Value Returned (use void if doesn't return)
*/
public function sum($a, $b)
{
/**
* @todo Needs implement validation
*/
return $result = $a + $b;
}
}
如果要在函数上使用,则遵循相同的模式:
/**
* Returns Hello, $name
*
* @param string $name
*/
function hello($name) {
{
printf('Hello, %s', $name);
}
Laravel的路由使用匿名函数,类似于jQuery,但是,您也应该能够使用PhpDoc:
/**
* Route for user
*
* @uses Route::get()
* @example http://url.com/user/john
* @param string $name
*/
Route::get('user/{name?}', function($name = 'John')
{
return $name;
});
更有文档记载的方法可能是为您的函数命名并稍后调用:
/**
* Route for user
*
* @uses Route::get()
* @example http://url.com/user/john
* @param string $name
*/
function route_user_name($name = 'John')
{
return $name;
});
Route::get('user/{name?}', route_user_name($name));
在官方网站上查看更多内容:http://www.phpdoc.org/
PS:大多数IDE或文本编辑器都有插件(扩展名),以便轻松实现Sublime Text:https://github.com/SublimeText/PhpDoc