Może zacznę od tego, że nie jestem programistą, przez co wykazuję dużą trudność w poruszaniu się w językach programowania. Oczywiście potrafię napisać proste rzeczy, typu prosta instrukcja warunkowa if/else, ale na tym się moje umiejętności w tym zakresie kończą. Żeby jednak nie wyjść na totalną lamę, wspomnę tylko, że biegle znam język HTML4/5 i CSS 2/3. To już coś, nie?

A teraz do rzeczy:
Mam panel do pisania tekstów napisany w PHP (na frameworku Laravel).
Panel zwraca tablicę JSON.
[0]=>
object(stdClass)#1 (5) {
["id"]=>
int(2)
["name"]=>
string(8) "rhythmix"
["created_at"]=>
string(27) "2020-07-17T18:52:52.000000Z"
["updated_at"]=>
string(27) "2020-07-17T18:52:52.000000Z"
["last_article"]=>
object(stdClass)#2 (9) {
["id"]=>
int(15)
["title"]=>
string(31) "Rhythmix AC 077 2016-12-09 H1T1"
["author"]=>
string(19) "Dariusz S."
["description"]=>
NULL
["content"]=>
string(633) "<p>"Rhythmix AC" to miksowany program 4BO skonstruowany z największych przebojów POP, Dance & R'N'B. Choć format czasem nawiązuje do aktualnych list przebojów, treść nie jest od nich w żaden sposób zależna. Powiedzieć można, że "Rhythmix" prezentuje utwory powszechnie znane i lubiane, często w zremixowanych (również przez Ultramix) wersjach.</p>
<p>Dystrybucja materiałów odbywała się za pośrednictwem portalu "Mixcloud.com", a projekt zakończył życie 160. odcinkiem w 2018 roku.</p>
<p>[media]https://www.mixcloud.com/ultramix/rhythmix-ac-77-2016-12-09-h1t1/[/media]</p>"
["is_active"]=>
int(1)
["category_id"]=>
int(2)
["created_at"]=>
string(27) "2025-08-17T23:16:08.000000Z"
["updated_at"]=>
string(27) "2020-08-06T20:52:19.000000Z"
}
}
[1]=>
object(stdClass)#3 (5) {
["id"]=>
int(3)
["name"]=>
string(3) "wps"
["created_at"]=>
string(27) "2020-07-17T18:52:57.000000Z"
["updated_at"]=>
string(27) "2020-07-17T18:52:57.000000Z"
["last_article"]=>
object(stdClass)#4 (9) {
["id"]=>
int(59)
["title"]=>
string(41) "Weekly Party Show - ARP Edition - Demo #1"
["author"]=>
string(19) "Dariusz S."
["description"]=>
NULL
["content"]=>
string(1151) "<p>"Weekly Party Show" to mixowany, "bezhostowy" program, którym ograłem wiele radiowych stacji internetowych. Program wzorowany był na amerykańskim Hot Mix'ie, choć ze względu na specyfikę rynku, w pierwotnej konstrukcji i zawartości nieco różnił się od oryginału (nie opierał się sztywno na światowym topie; dopuszczał utwory polskich wykonawców). Swoje życie program zaczął w 1995 roku, kiedy tworzyłem go w elbląskim Radio Bis (pod nazwą "Dance Mix"). Wraz z rozwojem technologii, miksy tworzone w "analogowy" sposób, wyparte zostały przez montaż komputerowy, co wpłynęło na jakość finalnego produktu.</p>
<p>Program posiadał kilka "krótkich" wersji, m.in. profilowany muzycznie "Urban Mix" (z 10-odcinkową emisją w internetowym radio Hip Hop Polska), a także luźniejszą formatowo wersję "Live", graną gościnnie w różnych miejscach w internecie. Ostatnie emisje miały miejsce w internetowym radio OnAir!, a program zakończył swoje życie 709. odcinkiem specjalnym.</p>
<p>[media]https://www.mixcloud.com/ultramix/weekly-party-show-arp-edition-demo-1/[/media]</p>"
["is_active"]=>
int(1)
["category_id"]=>
int(3)
["created_at"]=>
string(27) "2025-08-18T23:26:58.000000Z"
["updated_at"]=>
string(27) "2020-08-06T20:59:49.000000Z"
}
}
Wywołanie danych z kodu jest następujące:
$json = json_decode($data);
Tablica zwraca wartości m.in.:
$category->id /* id istniejącej kategorii */
$category->last_article->id /* id ostatniego napisanego artykułu w danej kategorii */
To działa idealnie, mogę wyświetlić dane instrukcją:
foreach ($json as $category):
$category_id=$category->id;
$category_last=$category->last_article->id;
$article_id=$category->last_article->title;
$redirect_link='?cat='.$category_id.'&id='.$category_last.'&page=1';
echo 'ID kategorii: '.$category_id; echo 'ID ostatniego artykułu w kategorii: '.$category_last; echo 'Link ostatniego artykułu w kategorii: '.$redirect_link;
endforeach;
$redirect_link potrzebny mi jest, żeby stronę wywołania bez podanych parametrów wyświetlania (np. blog.php?cat=4&id=256&page=1 zamiast blog.php) przekierować
na wartość określoną właśnie w $redirect_link, przy założeniu, że na jedna strona obsługuję jedną kategorię - np. blog.php - '4', txt.php -12.
Potrzebuję więc funkcji (do której require umieszczę w kodzie każdej ze stron), która wyciągnie właściwe dla siebie dane z funkcji (sprawdzi do jakiej strony wykonać przeładowanie, jeśli załadowana strona została wywołana bez parametru).
Nie potrafię chyba prościej tego opisać