これは単なる好奇心の質問です。その背後にある理由は、純粋に私のところで少し怠けていることです。ここに私が言っていることがあります..PHP配列キーにエイリアスを付けることはできますか?
私は、htaccessが素敵なURLを作るウェブサイトを持っていて、そのデータを現在の 'ページ'として$ _GET ['p']配列キーに送ります。インデックスファイルでは、私はページを設定しました。まず、設定ファイル$ _PAGE配列にページ設定をいくつかセットアップします。今、私は同じ設定をしたい複数のページを持っていると言うと(そしてページの下に、設定に対応しない他のものが少し変わるかもしれないので、現在、私は次の2つの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/'];
配列が作成された後に「エイリアス」への順序のページに、私は最後にこれを追加する必要があり、ページ配列ofthe終わりということに注意してください。
多分、PHPのいずれかの方法があります私はちょっと気付いていない、それは私をちょっとレイジーにして(そして同時にクリーナーコードに加える)、単にキーのエイリアスにすることができるだろうか?次のことはうまくいかないことに気がつく。質問には、エイリアスを作成する方法がありますか?配列の作成中に同じ配列ですか?
この例では、作業をdeosn't:たぶん
// page.array.php
$_PAGE = array(
'some/page/' => array(
'title' => 'This is an example'
),
'some/aliased/page/' => $_PAGE['some/page/']
)
自体の中から、 "この" 配列を参照する方法はありますか?
これができない場合は、「可能ではない」という回答に問題はありません。あなたがこれを解決するより良い方法を持っていれば、私が上で説明した以外の方法で、怠け者のために、私はそれを読むことに興味があります:)
短い回答、いいえ、それは残念ながら作成中ではありません。後ではい、あなたのように、または参照(変更が反映されている)でも、「ソース」は存在していなければならず、完全にインスタンス化されなければなりません。私は最後に追加されたエイリアスを見ても構いませんが、実際のページとエイリアスを区別するために何かがあります。 – Wrikken