PHPackages                             adinan-cenci/internet-radio - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. adinan-cenci/internet-radio

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

adinan-cenci/internet-radio
===========================

A library to fetch internet-radio.com radio stations.

v2.1.0(3y ago)08MITPHPPHP &gt;=7.0

Since Jan 23Pushed 3y ago1 watchersCompare

[ Source](https://github.com/adinan-cenci/internet-radio)[ Packagist](https://packagist.org/packages/adinan-cenci/internet-radio)[ RSS](/packages/adinan-cenci-internet-radio/feed)WikiDiscussions master Synced 3w ago

READMEChangelog (5)Dependencies (1)Versions (6)Used By (0)

Internet Radio
==============

[](#internet-radio)

An unofficial library to retrieve radio stations from the [internet-radio.com](https://internet-radio.com) catalog.

Stations by genre
-----------------

[](#stations-by-genre)

Use the `::getStationsByGenre($genre, $offset, $limit, $sortBy)` method to retrieve stations labeled with a specific musical genre.

ParameterTypeDefaultDescription$genrestringThe name of a musical genre, see `::getGenres()` for possible values.$offsetint0$limitint20$sortBystring'featured'Possible values: featured, listeners, bitrate.```
use AdinanCenci\InternetRadio\InternetRadio;

$internetRadio = new InternetRadio();
$stations = $internetRadio->getStationsByGenre('metal');
```

It will return an array as such:

```
[
    {
        "id": "idobihowl",
        "name": "idobi Howl",
        "description": "metal, hardcore",
        "homepage": "http://idobiradio.com/",
        "playlist": "http://69.46.88.26:80/listen.pls",
        "currentlyPlaying": "SYLOSIS - Fear the World",
        "listeners": "2527",
        "bitRate": "128"
    },
    {
        "id": "knac.com",
        "name": "KNAC.COM",
        "description": "metal",
        "homepage": "http://www.knac.com",
        "playlist": "http://198.178.123.14:7346/listen.pls?sid=1",
        "currentlyPlaying": "NAZARETH - HAIR OF THE DOG",
        "listeners": "268",
        "bitRate": "128"
    },
    {
        "id": "metalexpressradio",
        "name": "Metal Express Radio",
        "description": "heavy metal",
        "homepage": "http://www.metalexpressradio.com",
        "playlist": "http://5.135.154.69:11590/listen.pls?sid=1",
        "currentlyPlaying": "David T. Chastain - Burning Passion",
        "listeners": "199",
        "bitRate": "192"
    }
    ...
    ...
    ...

```

Search stations
---------------

[](#search-stations)

Use the `::searchStations($query, $offset, $limit, $sortBy)` method to search stations based on their names.

ParameterTypeDefaultDescription$querystringWord(s) to be matched against station names.$offsetint0$limitint20$sortBystring'featured'Possible values: featured, listeners, bitrate.Genres
------

[](#genres)

The `::getGenres()` returns an array of musical genres used to label radio stations. Use this values to search stations with the `::getStationsByGenre()` method.

```
$genres = $internetRadio->getGenres();
/*
'50s',
'60s',
'Acid House',
'Bass',
'Jazz',
'Metal',
...
...
...
*/
```

Notes
-----

[](#notes)

At the moment of this writing, internet-radio.com does not provide an API, the information provided by this library is being scraped from the official website and this library may stop working in the day they decide to update their page.

License
-------

[](#license)

MIT

###  Health Score

23

—

LowBetter than 26% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity4

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity52

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~157 days

Total

5

Last Release

1356d ago

Major Versions

1.1.1 → 2.0.02021-11-06

### Community

Maintainers

![](https://www.gravatar.com/avatar/3c1eb1b039e965bb307f010fb1dd41fbc79c8c9e9a65324b8f18d2bb9168097d?d=identicon)[AdinanCenci](/maintainers/AdinanCenci)

---

Top Contributors

[![adinan-cenci](https://avatars.githubusercontent.com/u/1629643?v=4)](https://github.com/adinan-cenci "adinan-cenci (3 commits)")

---

Tags

musicradio

### Embed Badge

![Health badge](/badges/adinan-cenci-internet-radio/health.svg)

```
[![Health](https://phpackages.com/badges/adinan-cenci-internet-radio/health.svg)](https://phpackages.com/packages/adinan-cenci-internet-radio)
```

###  Alternatives

[aws/aws-sdk-php

AWS SDK for PHP - Use Amazon Web Services in your PHP project

6.3k543.5M2.6k](/packages/aws-aws-sdk-php)[neuron-core/neuron-ai

The PHP Agentic Framework.

2.0k656.1k38](/packages/neuron-core-neuron-ai)[tencentcloud/tencentcloud-sdk-php

TencentCloudApi php sdk

3741.3M46](/packages/tencentcloud-tencentcloud-sdk-php)[civicrm/civicrm-core

Open source constituent relationship management for non-profits, NGOs and advocacy organizations.

751291.4k41](/packages/civicrm-civicrm-core)[spatie/laravel-export

Create a static site bundle from a Laravel app

674146.0k6](/packages/spatie-laravel-export)[oat-sa/tao-core

TAO core extension

66143.7k121](/packages/oat-sa-tao-core)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
