2014-10-13 2 views
0

내 사용자의 설정 페이지에 표시 할 문자열이 있다고 가정 해 보겠습니다. 특정 사용자의 HWID이지만 예를 들어 x 문자열의 마지막 15 자처럼 숨기고 싶습니다. 이 작업을 수행하는 방법? 아마도 preg_replace() .. 제게 알려주세요.문자열의 마지막 15 자리를 x로 바꾸는 방법은 무엇입니까?

예 문자열 : aaaec315bbfb9184fd9d7c8e165b297d하지만 나는 그것이 HWID 이후에만 영숫자 문자를 포함 할 수 있다고 생각 exmaple

에 대한 aaaec315bbfb9184f************** 같이 표시됩니다.

답변

3
$string = substr($string,0,-15)."xxxxxxxxxxxxxxx"; 
+0

아, 내가 지금 그것을 밖으로 시도합니다 생산할 예정이다

substr_replace($string, 'xxxxxxxxxxxxxx', -15); 

. 또한 mssql 서버 2005 테이블에서 getdate() 결과를 표시 할 때 동일한 substr()을 사용하여 밀리 초를 제거 할 수 있습니까? – Monk25

1

@ hellocde의 예를 이렇게 않지만, 난 그냥이 그것을 위해 의도 무엇 대신으로 기본 substr_replace 기능을 사용할 수 있습니다.

aaaec315bbfb9184fdxxxxxxxxxxxxxx 

Functional example

+0

대단히 감사합니다. 답을 받아들이 기 전에'substr()'을 사용하여 getdate() 결과에서 마지막 밀리 초를 제거 할 수 있다면 마지막으로 알려주시겠습니까? '2014-10-11 22 : 57 : 48.501'과 같은 날짜가있는 컬럼을 가지고 있기 때문에 '.501'없이 날짜를 표시하는 데 안전하게 사용할 수 있습니까? 나는 그것이 일할 것이라는 것을 그러나 아직도 그것을하는 것이 좋다고 알고있다? 다시 한번 감사합니다! – Monk25

+0

@ Monk25'getdate()'는 배열을 반환하므로 배열에서 문자열을 어떻게 구성하고 있습니까? 그것은 실제 문제가있는 곳일 것입니다. – Ohgodwhy

+0

MSSQL Server 2005에서 저장 프로 시저를 사용하고 있는데 데이터베이스의 열을 다음과 같이 값을 업데이트합니다.'2014-10-11 22 : 57 : 48.501','substr()'을 사용하여 위의 나의 이전 코멘트에서 말했듯이 마지막에'.miliseconds'가없는 첫 번째 숫자. 그것은 작동하지만 그것을 사용하는 것이 좋다? 그게 무슨 뜻이야? – Monk25

관련 문제