Вот ответ, который работал на меня:
<delete includeemptydirs="true">
<fileset dir="${root}" defaultexcludes="false">
<include name="**/*tmp*/**" />
</fileset>
</delete>
у меня была добавленная сложность, которую я должен был удалить .svn
каталоги также. С defaultexcludes
, .*
файлы исключались, и таким образом, пустые каталоги не были действительно пусты, и так не становились удаленными.
атрибут includeemptydirs
(спасибо, flicken, XL-PlГјschhase) позволяет запаздыванию **
подстановочный знак соответствовать пустой строке.
Я бы избегал использования @param.
Также вы можете создать метод _validate (), чтобы сделать это очевидным в коде. Затем вы можете использовать _validate () для создания стыка для модульного тестирования.
/**
* Display a pagination/grid list of rows.
*
* Requires $_REQUEST['order'] and $_REQUEST['dir']
*
* @return void
*/
public function listAction()
{
list($order, $dir) = $this->_validate($this->_request);
...
private function _validate($request) {
if (!$request->order)
throw new InvalidArgumentException('"Order" must be in request');
if (!$request->dir)
throw new InvalidArgumentException('"Dir" must be in request');
// maybe clean vars???
//Zend_Filter_Numeric.....
return array($request->order, $request->dir);
}
Обычно я использую то, что вы предложили, или добавляю простой комментарий, не связанный с phpdoc, когда код слишком длинный, или просто ничего не делаю.
Из этих трех ваше решение является лучшим , Я полагаю.
Только одну вещь, которую вы должны проверить: хорошо ли это отображается, когда вы генерируете phpdoc?
Теоретически, поскольку phpdoc использует имена, которые вы даете в блоке документации, я полагаю, что это должно быть. ..
Если да ... ну, лучшего пути не вижу; нет необходимости в лучшем способе: я не думаю, что вы могли бы сделать что-то более чистое / читаемое / понятное, чем это.
Мне не нравится идея
@param string $order
: ничего не показывает $ order
должно быть указано в $ _ GET
и не является «параметром реального метода»; поэтому я бы предпочел избегать этого синтаксиса.
Я никогда не использую @var для параметров, кстати: только для переменных,