2011-12-23 19 views
1

私はテーマのオプションページを作成していて、キーをphp cssファイルに送信しようとしています。私はarray keyを親配列から選択できますが、サブセットからcss keyを取得する方法はわかりません。誰も私にこれを助けることができますか?私はphpに非常に緑色で、学ぶために最善を尽くしています。配列からサブセットキーを抽出する

ありがとうございます!

$fonts = array( 
'Arial' => array( 
    'name' => 'Arial', 
    'font' => '', 
    'css' => "font-family: Arial, sans-serif;" 
), 
'ubuntu' => array( 
    'name' => 'Ubuntu', 
    'font' => '@import url(http://fonts.googleapis.com/css?family=Ubuntu);', 
    'css' => "font-family: 'Ubuntu', sans-serif;" 
), 
'lobster' => array( 
    'name' => 'Lobster', 
    'font' => '@import url(http://fonts.googleapis.com/css?family=Lobster);', 
    'css' => "font-family: 'Lobster', cursive;" 
), 
'Lato' => array(
    'name' => 'Lobster', 
    'font' => '@import url(http://fonts.googleapis.com/css?family=Lato);', 
    'css' => "font-family: 'Lato', sans-serif;" 
), 
'Droid Sans' => array(
    'name' => 'Droid Sans', 
    'font' => '@import url(http://fonts.googleapis.com/css?family=Droid+Sans);', 
    'css' => "font-family: 'Droid Sans', sans-serif;" 
), 
'Tachoma' => array( 
    'name' => 'Tachoma', 
    'font' => '', 
    'css' => "font-family: Tachoma, Geneva, sans-serif;" 
), 
'Verdana' => array( 
    'name' => 'Verdana', 
    'font' => '', 
    'css' => "font-family: Verdana, Verdana, Geneva, sans-serif;" 
), 
'Times New Roman' => Array(
    'name' => 'Times New Roman', 
    'font' => '', 
    'css' => "font-family: Times New Roman, Times New Roman, serif;" 
), 
'Georgia' => array( 
    'name' => 'Georgia', 
    'font' => '', 
    'css' => "font-family: Georgia, serif;" 
), 
'Custom Font' => array(
    'name' => $custom_family, 
    'font' => $custom_font, 
    'css' => "font-family:" . $custom_family . "sans-serif;", 
    ) 
); 
$custom_font = get_option('ideate_custom_font');  
//Extract the values from the URL String that are separated by '=' 
$name_extract = explode('=', $custom_font); 

//Find these characters in the URL string 
$find = array("+", ");"); 
//Add Space or Null the value 
$replace = array(" ",""); 
//Take the Family Value from the String and Remove any Special Characters from 'Find' array 
$custom_family_string = str_replace($find,$replace,$name_extract[1]); 
//Take Value from String Replacement and Add Quotes Around it 
$custom_family = "\"" .$custom_family_string. "\""; 
$font_array = array_keys($fonts); 

答えて

2

を私はあなただけしたいと思う:

$font = 'Arial'; 
$css = $fonts[$font]['css']; 
+0

これはPHPファイル内でローカルに動作します。この値を別のファイルに渡すにはどうしますか? – mnelson7982

+0

私は別のファイルに配列を配置し、両方のファイルのヘッダーに含めました。ファイル内の '$ css'変数を呼び出すことができません。出力をNULLにします。 – mnelson7982

+0

心配しないで...私は悪い道を持っていた! – mnelson7982

1

PHP documentation on arraysを読むことをお勧めします。あなたの特定の状況では

、あなたがこのような方法でデータにアクセスします。

$font_name = 'Verdana'; 
$fonts[$font_name]['css'] //"font-family: Verdana, Verdana, Geneva, sans-serif;" 
0

これは動作するはずです - $fonts['Arial']['css']。探しているフォントを「Arial」に置き換えてください。

関連する問題