sys_getloadavg(), shell_exec('lscpu')) or OS-specific libraries (e.g., sysinfo on Linux) may suffice for simpler needs, reducing dependency bloat.boson-php/cpu-info).boson-php packages if used.CpuInfo::get()->cores()), but straightforward.shell_exec on unsupported systems)./proc/cpuinfo).config() or a singleton) mitigates repeated calls.file_get_contents('/proc/cpuinfo') on Linux; avoid in high-frequency contexts.sys_getloadavg(), shell_exec('lscpu'), or a custom solution been ruled out?boson-php packages (e.g., boson) needed, increasing risk?CpuInfo::class => \Boson\CpuInfo\CpuInfo::class).AppServiceProvider or a dedicated CpuInfoServiceProvider.CpuInfo facade for cleaner syntax (e.g., CpuInfo::cores()).php artisan cpu:info for CLI diagnostics.new \Boson\CpuInfo\CpuInfo().lscpu, wmic cpu on Windows).class LaravelCpuInfo {
protected static ?array $cache = null;
public static function get(): array {
if (self::$cache === null) {
self::$cache = (new \Boson\CpuInfo\CpuInfo())->toArray();
}
return self::$cache;
}
}
/proc/cpuinfo (standard on most distros).sysctl; test thoroughly.boson-php packages (e.g., boson).sysinfo that overlap functionality.composer.json and run composer require boson-php/cpu-info.if (CpuInfo::hasAes()) { ... })./proc/cpuinfo missing, use shell_exec")./proc/cpuinfo (solution: ensure container has access).dd(CpuInfo::get())).lscpu, wmic cpu get /format:list).| Failure Scenario | Impact | Mitigation |
|---|---|---|
| Package returns incomplete data | App may misidentify CPU capabilities | Fallback to native commands or disable feature. |
/proc/cpuinfo inaccessible |
Linux-only failures | Use shell_exec('lscpu') or skip feature. |
| Windows/macOS unsupported flags | Missing CPU feature detection | Document limitations; avoid relying on flags. |
| Package abandoned | No updates/security fixes |
How can I help you explore Laravel packages today?