(1)∵f(x)过点P(1,-1),
∴-1=ln1-m,∴m=1,
∴f(x)=lnx-x,
f′(x)=?1,
f'(1)=0,
∴过点P(1,-1)的切线方程为y=-1.
(2)∵f(x)≤0恒成立,
即lnx-mx≤0恒成立,
∴mx≥lnx,
又∵f(x)定义域为(0,+∞),
∴m≥恒成立;
设g(x)=,
∵g′(x)=,
∴当x=e时,g'(e)=0
当0<x<e时,g'(x)>0,g(x)为单调增函数,
当x>e时,g'(x)<0,g(x)为单调减函数,
∴g(x)max=g(e)=,
∴当m≥时,f(x)≤0恒成立.
(3)∵f′(x)=?m=,
①当m≤0时,f'(x)>0,
∴f(x)在(0,+∞)为单增函数,
∵在x∈[1,e]上,f(x)max=f(e)=1-me;
②当≤m≤1,即1≤≤e时,
当x∈(0,)时,f'(x)>0,f(x)为单增函数,
当x∈(,+∞)时,f'(x)<0,f(x)为单减函数,
∴x∈[1,e]上,f(x)max=f()=?lnm?1;
③当m>1时,即0<<1,f(x)在(,+∞)为单减函数,
∴x∈[1,e]上,f(x)max=f(1)=-m;
④当0<m<,即>e时,
f(x)在(0,)为单增函数,
∴x∈[1,e]时,f(x)max=f(e)=1-me;
综上所述,
当m<时,f(x)max=f(e)=1-me,
当≤m≤1时,f(x)max=f()=?lnm?1
当m>1时,f(x)max=f(1)=-m.