문제가 실제로 구문 분석 만하는 경우이 경우 간단한 정규식을 권합니다.
그러나 내가 추천하는 것은 명명 된 패턴을 사용하는 것이므로 색인을 혼동하지 말고 maby가 잘못된 일치를 갖습니다. 메일이 더 들어갔을 경우
이
$str = <<<body
Name: xyz
Zip: 33402
body;
if(preg_match('/(?P<name>\w+): (?P<zip>\d+)/', $str, $matches)) {
print_r($matches);
// db beeing your database connector, for example pdo
$sql = "INSERT INTO mytable (name,zip) VALUES(".$db->quote($matches['name']).",".$db->quote($matches['zip']);
echo $sql;
} else {
//mail does not correspond to pattern!
}
, preg_match를 여러 번 사용 : 여기
빠른 예입니다. 각 필드마다 별도로 구문 분석하려고 할 수 있습니다. 더 많은 필드가있는 경우 거대한 정규 표현식을 작성하는 것은 유지하기가 매우 어렵습니다. 또한 필드의 순서를 고려해야합니다.
그러나 이것은 모두 매우 강력하지는 않습니다. 특히 필드의 내용을 고려해야합니다.
누군가 줄 바꿈이나 쉼표가있는 이름이 있으면 어떻게됩니까?
나는 정말로 메일 본문을 위조하기 전에 더 나은 형식으로 두는 것이 좋습니다. 탈출을 다루는 사람. 예를 들어 CSV 또는 (내가 가장 좋아하는) JSON.
죄송합니다. 전 애견이 없습니다. 파싱도. 내게 도움이되는지 아닌지 확인하기 위해 참고 자료를 제공해 주시겠습니까? – Jacklish