3v4l.org

run code in 300+ PHP versions simultaneously
<?php // index.php (tek dosya) — canlı maçları çekip ekranda gösterir header('Content-Type: text/html; charset=utf-8'); $LIVE_URL = 'PASTE_LIVE_JSON_ENDPOINT_HERE'; // Network'ten yakaladığın URL function http_get_json($url, $headers = []) { $ch = curl_init($url); curl_setopt_array($ch, [ CURLOPT_RETURNTRANSFER => true, CURLOPT_FOLLOWLOCATION => true, CURLOPT_TIMEOUT => 20, CURLOPT_CONNECTTIMEOUT => 10, CURLOPT_SSL_VERIFYPEER => true, CURLOPT_HTTPHEADER => $headers, ]); $raw = curl_exec($ch); $err = curl_error($ch); $code = curl_getinfo($ch, CURLINFO_HTTP_CODE); curl_close($ch); if ($raw === false) return [null, "cURL error: $err", $code]; $json = json_decode($raw, true); if (!is_array($json)) return [null, "JSON parse failed", $code]; return [$json, null, $code]; } // Network’teki request’ten birebir al (gerekirse) $headers = [ 'accept: application/json, text/plain, */*', 'user-agent: Mozilla/5.0', 'referer: https://www.jojobet1112.com/sports', // Eğer endpoint cookie istiyorsa (login vb.), buraya eklenir: // 'cookie: ...' ]; $apiMode = isset($_GET['api']) && $_GET['api'] === '1'; [$data, $error, $code] = http_get_json($LIVE_URL, $headers); if ($apiMode) { header('Content-Type: application/json; charset=utf-8'); if ($error) { echo json_encode(['ok'=>false, 'http_code'=>$code, 'error'=>$error], JSON_UNESCAPED_UNICODE); exit; } // Ham JSON’u döndür (istersen burada normalize edip döndürürüz) echo json_encode(['ok'=>true, 'http_code'=>$code, 'data'=>$data], JSON_UNESCAPED_UNICODE); exit; } /** * Burada normalize ediyoruz. * NOT: Aşağıdaki alan isimleri SADECE örnek. * Senin yakaladığın JSON’un yapısına göre map edeceğiz. */ $matches = []; if (is_array($data)) { // Örnek: $data['events'] gibi bir yerden çekilecek $events = $data['events'] ?? $data['data']['events'] ?? []; foreach ($events as $e) { $matches[] = [ 'id' => $e['id'] ?? $e['eventId'] ?? null, 'league' => $e['league']['name'] ?? $e['leagueName'] ?? '-', 'home' => $e['home']['name'] ?? $e['home'] ?? '-', 'away' => $e['away']['name'] ?? $e['away'] ?? '-', 'score' => ($e['score']['home'] ?? '-') . ' - ' . ($e['score']['away'] ?? '-'), 'minute' => $e['time']['minute'] ?? $e['minute'] ?? null, 'startTime' => $e['startTime'] ?? $e['kickoff'] ?? null, // Örnek 1X2 odds 'odds_1' => $e['odds']['1'] ?? null, 'odds_x' => $e['odds']['X'] ?? null, 'odds_2' => $e['odds']['2'] ?? null, ]; } } ?> <!doctype html> <html lang="tr"> <head> <meta charset="utf-8"/> <meta name="viewport" content="width=device-width,initial-scale=1"/> <title>Canlı Maçlar</title> <style> body{font-family:system-ui,Segoe UI,Arial;margin:20px;background:#0b0f19;color:#e8eefc} .top{display:flex;gap:10px;align-items:center;margin-bottom:14px} button{padding:10px 12px;border:0;border-radius:10px;cursor:pointer} .card{background:#111a2e;border:1px solid #1f2a44;border-radius:14px;padding:12px;margin:10px 0} .row{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap} .muted{color:#97a6c6;font-size:13px} .odds{display:flex;gap:8px} .pill{background:#0b1222;border:1px solid #223155;border-radius:999px;padding:6px 10px;font-size:13px} </style> </head> <body> <div class="top"> <button onclick="location.reload()">Yenile</button> <span class="muted">API: <code>?api=1</code> | Not: Endpoint’i yakalayınca map’i netleştiririz.</span> </div> <?php if ($error): ?> <div class="card"> <div><b>Çekilemedi</b> (HTTP: <?=htmlspecialchars((string)$code)?>)</div> <div class="muted"><?=htmlspecialchars($error)?></div> <div class="muted" style="margin-top:8px;">LIVE_URL ve header/cookie’yi Network’ten gelen isteğe göre doldur.</div> </div> <?php endif; ?> <?php foreach ($matches as $m): ?> <div class="card"> <div class="row"> <div><b><?=htmlspecialchars($m['home'])?></b> vs <b><?=htmlspecialchars($m['away'])?></b></div> <div class="muted"><?=htmlspecialchars($m['league'])?> • ID: <?=htmlspecialchars((string)$m['id'])?></div> </div> <div class="row" style="margin-top:8px;"> <div>Skor: <b><?=htmlspecialchars($m['score'])?></b> <?= $m['minute'] !== null ? "<span class='muted'>({$m['minute']}' )</span>" : "" ?></div> <div class="muted">Saat: <?=htmlspecialchars((string)$m['startTime'])?></div> </div> <div class="odds" style="margin-top:10px;"> <span class="pill">1: <?=htmlspecialchars((string)$m['odds_1'])?></span> <span class="pill">X: <?=htmlspecialchars((string)$m['odds_x'])?></span> <span class="pill">2: <?=htmlspecialchars((string)$m['odds_2'])?></span> </div> </div> <?php endforeach; ?> </body> </html> <?php // index.php (tek dosya) — canlı maçları çekip ekranda gösterir header('Content-Type: text/html; charset=utf-8'); $LIVE_URL = 'PASTE_LIVE_JSON_ENDPOINT_HERE'; // Network'ten yakaladığın URL function http_get_json($url, $headers = []) { $ch = curl_init($url); curl_setopt_array($ch, [ CURLOPT_RETURNTRANSFER => true, CURLOPT_FOLLOWLOCATION => true, CURLOPT_TIMEOUT => 20, CURLOPT_CONNECTTIMEOUT => 10, CURLOPT_SSL_VERIFYPEER => true, CURLOPT_HTTPHEADER => $headers, ]); $raw = curl_exec($ch); $err = curl_error($ch); $code = curl_getinfo($ch, CURLINFO_HTTP_CODE); curl_close($ch); if ($raw === false) return [null, "cURL error: $err", $code]; $json = json_decode($raw, true); if (!is_array($json)) return [null, "JSON parse failed", $code]; return [$json, null, $code]; } // Network’teki request’ten birebir al (gerekirse) $headers = [ 'accept: application/json, text/plain, */*', 'user-agent: Mozilla/5.0', 'referer: https://www.jojobet1112.com/sports', // Eğer endpoint cookie istiyorsa (login vb.), buraya eklenir: // 'cookie: ...' ]; $apiMode = isset($_GET['api']) && $_GET['api'] === '1'; [$data, $error, $code] = http_get_json($LIVE_URL, $headers); if ($apiMode) { header('Content-Type: application/json; charset=utf-8'); if ($error) { echo json_encode(['ok'=>false, 'http_code'=>$code, 'error'=>$error], JSON_UNESCAPED_UNICODE); exit; } // Ham JSON’u döndür (istersen burada normalize edip döndürürüz) echo json_encode(['ok'=>true, 'http_code'=>$code, 'data'=>$data], JSON_UNESCAPED_UNICODE); exit; } /** * Burada normalize ediyoruz. * NOT: Aşağıdaki alan isimleri SADECE örnek. * Senin yakaladığın JSON’un yapısına göre map edeceğiz. */ $matches = []; if (is_array($data)) { // Örnek: $data['events'] gibi bir yerden çekilecek $events = $data['events'] ?? $data['data']['events'] ?? []; foreach ($events as $e) { $matches[] = [ 'id' => $e['id'] ?? $e['eventId'] ?? null, 'league' => $e['league']['name'] ?? $e['leagueName'] ?? '-', 'home' => $e['home']['name'] ?? $e['home'] ?? '-', 'away' => $e['away']['name'] ?? $e['away'] ?? '-', 'score' => ($e['score']['home'] ?? '-') . ' - ' . ($e['score']['away'] ?? '-'), 'minute' => $e['time']['minute'] ?? $e['minute'] ?? null, 'startTime' => $e['startTime'] ?? $e['kickoff'] ?? null, // Örnek 1X2 odds 'odds_1' => $e['odds']['1'] ?? null, 'odds_x' => $e['odds']['X'] ?? null, 'odds_2' => $e['odds']['2'] ?? null, ]; } } ?> <!doctype html> <html lang="tr"> <head> <meta charset="utf-8"/> <meta name="viewport" content="width=device-width,initial-scale=1"/> <title>Canlı Maçlar</title> <style> body{font-family:system-ui,Segoe UI,Arial;margin:20px;background:#0b0f19;color:#e8eefc} .top{display:flex;gap:10px;align-items:center;margin-bottom:14px} button{padding:10px 12px;border:0;border-radius:10px;cursor:pointer} .card{background:#111a2e;border:1px solid #1f2a44;border-radius:14px;padding:12px;margin:10px 0} .row{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap} .muted{color:#97a6c6;font-size:13px} .odds{display:flex;gap:8px} .pill{background:#0b1222;border:1px solid #223155;border-radius:999px;padding:6px 10px;font-size:13px} </style> </head> <body> <div class="top"> <button onclick="location.reload()">Yenile</button> <span class="muted">API: <code>?api=1</code> | Not: Endpoint’i yakalayınca map’i netleştiririz.</span> </div> <?php if ($error): ?> <div class="card"> <div><b>Çekilemedi</b> (HTTP: <?=htmlspecialchars((string)$code)?>)</div> <div class="muted"><?=htmlspecialchars($error)?></div> <div class="muted" style="margin-top:8px;">LIVE_URL ve header/cookie’yi Network’ten gelen isteğe göre doldur.</div> </div> <?php endif; ?> <?php foreach ($matches as $m): ?> <div class="card"> <div class="row"> <div><b><?=htmlspecialchars($m['home'])?></b> vs <b><?=htmlspecialchars($m['away'])?></b></div> <div class="muted"><?=htmlspecialchars($m['league'])?> • ID: <?=htmlspecialchars((string)$m['id'])?></div> </div> <div class="row" style="margin-top:8px;"> <div>Skor: <b><?=htmlspecialchars($m['score'])?></b> <?= $m['minute'] !== null ? "<span class='muted'>({$m['minute']}' )</span>" : "" ?></div> <div class="muted">Saat: <?=htmlspecialchars((string)$m['startTime'])?></div> </div> <div class="odds" style="margin-top:10px;"> <span class="pill">1: <?=htmlspecialchars((string)$m['odds_1'])?></span> <span class="pill">X: <?=htmlspecialchars((string)$m['odds_x'])?></span> <span class="pill">2: <?=htmlspecialchars((string)$m['odds_2'])?></span> </div> </div> <?php endforeach; ?> </body> </html>
Output for 8.5.0 - 8.5.1
Fatal error: Cannot redeclare function http_get_json() (previously declared in /in/WaGis:8) in /in/WaGis on line 137 Stack trace: #0 {main}
Process exited with code 255.
Output for 8.4.1 - 8.4.16
Fatal error: Cannot redeclare function http_get_json() (previously declared in /in/WaGis:8) in /in/WaGis on line 137
Process exited with code 255.
Output for 8.2.27 - 8.2.30, 8.3.14 - 8.3.29
Fatal error: Cannot redeclare http_get_json() (previously declared in /in/WaGis:8) in /in/WaGis on line 137
Process exited with code 255.
Output for 8.1.34, 8.3.0 - 8.3.13
Fatal error: Cannot redeclare http_get_json() (previously declared in /in/WaGis:8) in /in/WaGis on line 156
Process exited with code 255.

preferences:
171.34 ms | 1012 KiB | 7 Q