본관은 고령(高靈). 자는 한사(漢四). 서울 출신. 부호군(副護軍) 박영보(朴永輔)의 아들이다.
1870년(고종 7) 진사로서 전시(殿試)에 응하였고, 이듬해 사과(司果)로 정시문과에 병과로 급제하였다. 1872년 부수찬·규장각직각(奎章閣直閣)에 제수되었고, 민치상(閔致庠)이 정사로 파견된 동지사 겸 사은사의 서장관으로 중국에 다녀왔다.
이듬해 부응교 등을 거쳐 1874년 사간(司諫)으로서 대사헌 심승택(沈承澤) 등과 함께 대원군의 복권을 상소한 부사과(副司果) 이휘림(李彙林)의 처벌을 요구하였다.
1875년 영희전작헌례(永禧殿酌獻禮) 때 집례(執禮)로 참여하여 가자되었으며, 1882년 우부승지, 1884년 이조참의·성균관대사성, 1885년 사간원 대사간 등을 역임하였다. 1886년 협판내무부사로 내무부의 전헌사(典憲司)를 담당하였고 이듬해 이조참판·사헌부대사헌 등에 제수되었다.
1897년 중추원1등의관에 임명되고 칙임관4등에 서임되었고, 이어 봉상사제조(奉上司提調)를 맡았다. 1898년 평안북도관찰사로 외직을 맡아 1899년 함경남도관찰사, 1900년 함경북도관찰사를 거쳤다.
같은 해 함경남도 재판소판사로 재직할 당시 고의로 남에게 죄를 더하여 판결하였던 문제를 들어 법부에서 상주하여 황해도 황주군 철도에 1년간의 유배형을 받았다. 그러나 4개월 만인 이 해 11월 고종의 명으로 방면되었다.
1901년 궁내부특진관에 임명되어 칙임관3등에 서임되었고 비서원승(祕書院丞)을 지냈다. 이 해 진하급좌당수하시(陳賀及坐堂受賀時) 예모관(禮貌官)으로 참여하여 시상과 함께 가자되었다.