To tylko ciekawa kwestia, rozumowanie za nią jest po prostu nieco leniwy z mojej strony. Oto co mam na myśli ..Czy klucze tablic PHP mogą mieć alias?
Załóżmy, że mam stronę internetową, gdzie htaccess tworzy ładne adresy URL i wysyła te dane do klucza tablicy $ _GET ['p'] jako bieżącej "strony". W pliku indeksu ustawiam stronę, a pierwszą rzeczą jaką zrobię jest ustawienie niektórych ustawień strony w pliku konfiguracyjnym, tablicy $ _PAGE. Teraz powiedzmy, że mam wiele stron Chcę mieć te same ustawienia (i na dole strony, inne rzeczy mogą się nieznacznie zmienić, które nie odpowiadają ustawieniom.) Tak więc obecnie mam coś, co wygląda jak te 2 pliki php.
// index.php
include('page.array.php');
echo '<title>'.$_PAGE[$_GET['p']]['title'].'</title>';
// page.array.php
$_PAGE = array(
'some/page/' => array(
'title' => 'This is an example'
)
)
$_PAGE['some/aliased/page/'] = $_PAGE['some/page/'];
Zauważ, że na końcu ofthe stronie tablicy, w celu „alias” a strona muszę dodać to do końca po tablica została utworzona.
Czy istnieje sposób w PHP, który może Jestem po prostu nieświadomy, że mógłbym uczynić mnie odrobinę leniwszym (i jednocześnie dodać do czystszego kodu), i sprawić, żebym mógł po prostu alias klucza? Zauważyłem, że poniższe nie działa, i przypuszczam, że mój pytanie brzmi, czy istnieje sposób na stworzenie aliasu w ta sama tablica podczas tworzenia tablicy?
Ten przykład deosn't praca:
// page.array.php
$_PAGE = array(
'some/page/' => array(
'title' => 'This is an example'
),
'some/aliased/page/' => $_PAGE['some/page/']
)
Może to sposób odnieść się do "tego" tablicy od wewnątrz siebie?
Jeśli nie jest to możliwe, nie mam problemu z odpowiedzią "Nie można". Chociaż, jeśli masz lepszą metodę rozwiązania tego problemu, inne niż opisałem powyżej, w trosce o leniwość, byłbym zainteresowany przeczytaniem go :)
Krótka odpowiedź, nie, nie podczas jej tworzenia niestety. Później tak, tak jak Ty, lub nawet z referencjami (więc zmiany są odzwierciedlane), ale "źródło" musi istnieć i być w pełni utworzone, zanim to się stanie. Nie mam nic przeciwko temu, że widzę te aliasy dodane na końcu, ale jest coś do powiedzenia, żeby odróżnić "prawdziwe" strony i aliasy. – Wrikken