본관은 반남(潘南). 초명(初名)은 박영훈(朴泳薰).
1879년(고종 16)에 문과에 급제하였으나 거주지 문제로 삭과(削科)되어 제주로 정배되었다가 그 해 말에 풀려났다. 1880년에 복과(復科)되고, 이듬해에 승문원부정자(承文院副正字)가 되었다.
1887년 주서를 거쳐 1887년 8월에 홍문관교리에 임명되었다. 1888년에 정언(正言)을 거쳐 이듬해에는 통위영군사마(統衛營軍司馬), 장악원정(掌樂院正), 성균관사성(成均館司成)을 역임하였으며, 1890년 공조참의를 거쳐 이듬해 4월에 형조참의가 되었고 그 해 8월에는 통리교섭통상사무참의(統理交涉通商事務參議)가 되었다.
이어 동부승지(同副承旨)를 거쳐 1892년에는 우부승지, 좌부승지를 지냈다. 1893년 11월에는 개성민란을 수습하는 안핵사(按覈使)에 임명되었으며, 1894년에는 좌부승지, 외무참의(外務參議), 한성부소윤을 거쳐 그 해 10월 순창군수에 임명되었다.
1897년 나주군수를 거쳐 1898년에는 제주목사에 임명되었으며, 1900년에는 통상사무관(通商司務官)이 되었다. 1901년에는 제주도 대정(大靜)에서 일어난 민란을 수습하는 안핵사가 되었으며, 1906년 12월에는 중추원부찬의(中樞院副贊議), 이듬해에는 비서감승(秘書丞) 겸 장례원장례(掌禮院掌禮)를 지냈다.