2016-07-11 2 views
0

가끔 8:30AM12/14/15과 같은 문자열이 있습니다. (끝 날짜가 다를 수 있음) 가끔 8:30AM처럼 보입니다. 내 문제는 나중에 예제처럼 보이기 위해 모두 필요하지만, 끝날 때마다 날짜가 표시 될 때까지 어떻게 다듬을지를 파악할 수 없다는 것입니다.가끔 문자열에서 날짜 지우기

문자열 끝 부분에 특정 양의 글자를 제거 할 수있는 기능을 알고 있지만 때로는 문자열이 좋기 때문에 그 기능이 작동하지 않습니다. 이것은 약 1 년 동안 실수로 사용자 데이터를 입력 한 결과입니다. 우리가 사용하고있는 소프트웨어를 다시 작성하고 훨씬 더 나은 데이터 입력 검증을 구현했지만 이전 항목을 새 소프트웨어로 변환하려고합니다.

+0

문자열 -> datetime 개체 -> 원하는 형식으로 출력하십시오. 예 : [date_create_from_string] (http://php.net/date_create_from_string) –

+0

'preg_replace'를 사용하십시오. 정규 표현식에 대한 일치 항목을 찾지 못하면 아무 것도 수행하지 않습니다. – Barmar

+0

@Barmar 그 문제는 날짜가 다를 수 있다는 것입니다. 나는 그것을 언급 했어야했다. – GrumpyCrouton

답변

2

preg_replace을 사용하면 문자열의 시간 부분 만 반환 할 수 있습니다.

$time = preg_replace('/^(\d{1,2}:\d{2}[AP]M).*/', $1, $time_date);