The following example code shows a problem with my \vertgap command, which is just intended to add some space above and below the mandatory argument after encapsulating it in an \hbox (for tall contents). It works fine in l-type columns, but obviously not in p-type columns. On my first tries I didn't recognize that, because it works in longtable (note: the example code lacks head- and footlines), not ignoring the auto-inserted \centering, too.
My goal can be seen in the longtable: all three table rows have equal height. Is it possible to achieve this behavior in tabular, too?
Addendum: simple use of \hbox in a p-type column is enough to show up the problem.
\documentclass{article}
\usepackage{longtable}
\usepackage{array}
\newcommand{\vertgap}[1]{\hbox{\vbox{\kern0.25ex\vtop{\hbox{#1}\kern0.25ex}}}}%
%\newcommand{\vertgap}[1]{\hbox{\vbox{\hrule height0.25ex\vtop{\hbox{#1}\hrule height0.25ex}}}}%
% The commented-out command above shows the inserted gaps - these seem to be ok.
\begin{document}
\begin{tabular}{|l|>{\centering}p{2in}|l|}
\hline%
aaaa: & 4711-0815 & any\\
\hline%
aaa: & \vertgap{0815} & any\\
\hline%
aa: & 4711 & any\\
\hline%
\end{tabular}
\begin{longtable}{|l|>{\centering}p{2in}|l|}
\hline%
aaaa: & 4711-0815 & any\\
\hline%
aaa: & \vertgap{0815} & any\\
\hline%
aa: & 4711 & any\\
\hline%
\end{longtable}
\end{document}