This solution works only with older version (3.4) of biblatex
I think that you are looking for the following solution:
\documentclass{article}
\usepackage[backend=bibtex]{biblatex}
\addbibresource{\jobname.bib}
\usepackage{filecontents}
\begin{filecontents*}{\jobname.bib}
@book{lamport1994latex,
title={LATEX: a document preparation system: user's guide and reference manual},
author={Lamport, Leslie},
year={1994},
publisher={Addison-wesley}
}
@book{mittelbach2004latex,
title={The LATEX companion},
author={Mittelbach, Frank and Goossens, Michel and Braams, Johannes and Carlisle, David and Rowley, Chris},
year={2004},
publisher={Addison-Wesley Professional}
}
\end{filecontents*}
\pagenumbering{gobble}
\begin{document}
\cite{lamport1994latex} is the one we started our journey with. Then
we also got~\cite{mittelbach2004latex}. Both
\cite{lamport1994latex,mittelbach2004latex} are good ones.
\printbibliography[prefixnumbers=P]
\end{document}

For details, please see page 76 of the biblatex documentation.
biblatexas your tagging suggests?\def\@biblabel#1{[P#1]}should not work in that case. You would use refcontexts andlabelprefixwithbiblatex. – moewe Aug 30 '17 at 21:11citeornatbib? – Mico Aug 30 '17 at 21:52