{"id":13405406,"url":"https://github.com/rlerdorf/opcache-status","last_synced_at":"2026-02-23T23:18:25.460Z","repository":{"id":7483225,"uuid":"8831785","full_name":"rlerdorf/opcache-status","owner":"rlerdorf","description":"A one-page opcache status page","archived":false,"fork":false,"pushed_at":"2022-02-07T14:25:59.000Z","size":2289,"stargazers_count":1561,"open_issues_count":20,"forks_count":373,"subscribers_count":92,"default_branch":"master","last_synced_at":"2025-05-11T10:17:41.246Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rlerdorf.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2013-03-17T08:23:09.000Z","updated_at":"2025-04-26T11:39:03.000Z","dependencies_parsed_at":"2022-08-06T20:01:16.075Z","dependency_job_id":null,"html_url":"https://github.com/rlerdorf/opcache-status","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rlerdorf%2Fopcache-status","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rlerdorf%2Fopcache-status/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rlerdorf%2Fopcache-status/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rlerdorf%2Fopcache-status/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rlerdorf","download_url":"https://codeload.github.com/rlerdorf/opcache-status/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254140760,"owners_count":22021219,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-07-30T19:02:01.210Z","updated_at":"2026-02-23T23:18:25.455Z","avatar_url":"https://github.com/rlerdorf.png","language":"PHP","funding_links":[],"categories":["PHP","Uncategorized","类库"],"sub_categories":["Uncategorized","调试工具"],"readme":"OPcache Status  [![Packagist](http://img.shields.io/packagist/v/rlerdorf/opcache-status.svg)](https://packagist.org/packages/rlerdorf/opcache-status)\n---------------\n\nA single-file OPcache status page for PHP 8.2+. Drop `opcache.php` into any directory and get a full overview of your OPcache configuration, cached scripts, and health — zero external dependencies.\n\n![Screenshot](screenshot.png)\n\n### Features\n\n- **Status tab** — all `opcache_get_status()` metrics at a glance, plus preload script and user when `opcache.preload` is configured\n- **Configuration tab** — current directives with changed values highlighted, inline documentation from php.net, human-readable formatting (memory sizes, time values, percentages), and a blacklisted paths section\n- **Health tab** — seven checks (memory, keys, interned strings, JIT buffer, wasted memory, hit rate, file cache) with green/yellow/red/info indicators, progress bars, and tuning suggestions\n- **Scripts tab** — sortable table of all cached scripts by hits, memory, or path with per-script cache invalidation on hover\n- **Cache management** — reset the entire cache or invalidate individual scripts, with confirmation modals that warn about the impact of a full reset\n- **Auto-refresh** — toggle a 5-second reload cycle with a live activity chart showing cache hits/s, misses/s, and memory usage over time\n- **Donut charts** — memory, keys, hits, restarts, and conditionally JIT and interned strings\n- **Squarified treemap** — interactive visualization of cached scripts by memory usage with drill-down navigation, inline and fullscreen modes\n- **Dark mode** — automatic via `prefers-color-scheme`\n- **Responsive** — CSS Grid layout adapts to narrow screens\n- **Read-only mode** — set `$readonly = true` at the top of `opcache.php` to disable all cache modification actions (reset and invalidate)\n\nEverything is self-contained in a single PHP file with inline CSS and vanilla JavaScript. No jQuery, no D3.js, no CDN scripts.\n\n### Usage\n\nInstall the package:\n```\ncomposer require --dev rlerdorf/opcache-status dev-master\n```\n\nDrop it where you want it in your public folder:\n```\nln -s vendor/rlerdorf/opcache-status/opcache.php ./public/\n```\n\nOpen the file in your browser:\n```\nhttp://127.0.0.1:8000/opcache.php\n```\n\nIf the Zend OPcache extension is not loaded, sample data from `data-sample.php` is shown automatically.\n\n### Development\n\n```\nphp -S localhost:8000\n```\n\nThen open `http://localhost:8000/opcache.php`. The fallback to sample data is based on `extension_loaded('Zend OPcache')`, not `opcache.enable`.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frlerdorf%2Fopcache-status","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frlerdorf%2Fopcache-status","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frlerdorf%2Fopcache-status/lists"}