2

URL、つまり www.example.com/apple/ に基づいて機能する単純な配列を持っています。これは、必要な場所にリンゴのテキストを配置しますが、別の固定テキストに貼り付けるオプションも必要ですブランド。

たとえば、$brand_to_use を使用して "apple" に配置し、$brandurl_to_use を使用して必要な場所に "apple.co.uk" を配置することができますが、これを配列に追加する方法がわかりませんオリジナルブランド。

ありがとう

$recognised_brands = array( 
  "apple", 
  "orange", 
  "pear",
  // etc 
); 

$default_brand = $recognised_brands[0]; // defaults brand to apple

$brand_to_use = isset($_GET['brand']) && in_array($_GET['brand'], $recognised_brands) 
  ? $_GET['brand'] 
  : $default_brand;

疑似コード更新の例:

recognised brands = 
apple
orange
pear

default brand = recognised brand 0


recognised brandurl =
apple = apple.co.uk
orange = orange.net
pear = pear.com



the brandurl is found from the recognised brands so that in the page content I can reference

brand which will show the text apple at certain places +
brandurl will show the correct brand url related to the brand ie apple.co.uk
4

2 に答える 2

1

キー/値ペアとして配列を作成し、配列内のキーを検索します。必要に応じて、各ペアの値の部分をオブジェクトにすることができます。

$recognised_brands = array(  
  "apple" => "http://apple.co.uk/",  
  "orange" => "http://orange.co.uk/",  
  "pear" => "http://pear.co.uk/", 
  // etc  
);  

reset($recognised_brands);  // reset the internal pointer of the array
$brand = key($recognised_brands); // fetch the first key from the array

if (isset($_GET['brand'] && array_key_exists(strtolower($_GET['brand']), $recognised_brands))
    $brand = strtolower($_GET['brand']);

$brand_url = $recognised_brands[$brand];
于 2012-07-27T08:51:30.287 に答える
0

あなたがやりたいことは次のようなものだと思います:

$recognised_brands = array( 
  "apple" => 'http://www.apple.co.uk/', 
  "orange" => 'http://www.orange.com/', 
  "pear" => 'http://pear.php.net/',
  // etc 
); 

$default_brand = each($recognised_brands);
$default_brand = $default_brand['key'];

$brand = isset($_GET['brand'], $recognised_brands[$_GET['brand']]) 
  ? $_GET['brand'] 
  : $default_brand;
$brand_url = $recognised_brands[$brand];

デフォルトのブランドを配列の最初の要素に動的に設定したい場合、すぐに乱雑になり始めます。しかし、次のようなことができます:

于 2012-07-27T08:55:49.177 に答える