<?php
// PHP 7.3 환경 확인 파일
// 이메일 설정 테스트 파일 (PHP 7.3 호환)
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;

require $_SERVER['DOCUMENT_ROOT'] . '/vendor/autoload.php';

echo "<h2>PHP 7.3 환경 확인</h2>";
echo "<p><strong>PHP 버전:</strong> " . PHP_VERSION . "</p>";

// 이메일 전송에 필요한 확장 모듈 확인
$required_extensions = array(
    'openssl' => 'SSL/TLS 암호화 (SMTP 보안 연결)',
    'mbstring' => '멀티바이트 문자열 처리 (UTF-8 이메일)',
    'json' => 'JSON 처리 (API 응답)',
    'curl' => 'HTTP 요청 (선택사항)',
    'fileinfo' => '파일 정보 (첨부파일)'
);

echo "<h3>필요한 PHP 확장 모듈:</h3>";
echo "<table border='1' style='border-collapse: collapse; width: 100%;'>";
echo "<tr><th>확장 모듈</th><th>상태</th><th>설명</th></tr>";

foreach ($required_extensions as $ext => $description) {
    $loaded = extension_loaded($ext);
    $status = $loaded ? "✅ 로드됨" : "❌ 로드되지 않음";
    $color = $loaded ? "green" : "red";
    
    echo "<tr>";
    echo "<td><strong>$ext</strong></td>";
    echo "<td style='color: $color;'>$status</td>";
    echo "<td>$description</td>";
    echo "</tr>";
}

echo "</table>";

// SMTP 포트 확인
echo "<h3>SMTP 포트 확인:</h3>";
$smtp_ports = array(25, 465, 587);
foreach ($smtp_ports as $port) {
    $connection = @fsockopen('smtp.naver.com', $port, $errno, $errstr, 5);
    if ($connection) {
        echo "<p>✅ 포트 $port: 연결 가능</p>";
        fclose($connection);
    } else {
        echo "<p>❌ 포트 $port: 연결 불가 ($errstr)</p>";
    }
}

// 디렉토리 권한 확인
echo "<h3>디렉토리 권한 확인:</h3>";
$pdf_dir = $_SERVER['DOCUMENT_ROOT'] . '/pdfs/';
echo "<p><strong>PDF 디렉토리:</strong> $pdf_dir</p>";
echo "<p><strong>존재 여부:</strong> " . (is_dir($pdf_dir) ? "✅ 존재" : "❌ 없음") . "</p>";
echo "<p><strong>쓰기 권한:</strong> " . (is_writable($pdf_dir) ? "✅ 쓰기 가능" : "❌ 쓰기 불가") . "</p>";

// PHPMailer 버전 확인
if (class_exists('PHPMailer\PHPMailer\PHPMailer')) {
    echo "<h3>PHPMailer 정보:</h3>";
    echo "<p><strong>버전:</strong> " . PHPMailer::VERSION . "</p>";
    echo "<p><strong>상태:</strong> ✅ 정상 로드됨</p>";
} else {
    echo "<h3>PHPMailer 정보:</h3>";
    echo "<p><strong>상태:</strong> ❌ 로드되지 않음</p>";
}
?> 