HTMLの事とか 
先月はWebデザインを主にしていました。
プログラムを全く触っていないわけじゃないですよ・・・?
まぁともかく!HTMLとかCSSとか、後PHPですこし気付いた事でも。
自分メモ的な感じで。
array_shift()とarray_pop()
array_shift()
array_pop()
てのがあるんですが。この関数、例えばarray_shift()だったら
$data = array('青','赤','黄','白','緑','紫','金','銀');
$data1 = array_shift($data);
echo $data1;
foreach($data1 as $val){
echo $val;
}
ってやれば
//$data1 青 //$data 赤黄白緑紫金銀
となる。配列の先頭の要素を抜き出す。
array_pop()は最後の要素を抜き出す。
元の配列が変わってしまうという点に注意さえすれば、便利な関数なんですが、
元の配列が変わってしまった事で起きた出来事が。
配列に都道府県毎の料金を入れて、最大値と最低値、都道府県毎の料金を表示させるって事をやってたんですが、
料金の最大値と最低値が表示されない!なんで!
と思って調べたら、array_shift()とarray_pop()を使っていたためでした。
料金の配列を降順でソートして、array_shift()で先頭(最大値)を、array_pop()で最後(最低値)を
抜いていたのです。
そこで、reset()、end()の登場。
reset()は内部ポインタを最初の要素まで戻し、その値を返す。
end()はその逆。
array_shift()とarray_pop()と似たような動きをする関数です。
array_shift()等とは違って、元の配列が変わらない。
処理速度はというと・・・そんなに変わらないそうです;;(若干reset()のほうが早いようですが)
しかし、max()、min()でやったら?って気がするかも・・・
因みにこのreset()関数、同じソースで、同じ配列を複数回使う場合などに使えます。というか使います。
$array = array('1', '2', '3', '4');
next($array);
echo current($array) ; // "2"
//ポインタをリセットして再度実行
reset($array);
echo current($array) ; // "1"
こんな感じかな?
以降はhtml関係のお話
メイリオについて
>メイリオとは、和文ゴシック体フォントの一つで、Vista以降のマイクロソフト製OSに標準で搭載されてる。
まぁXPとか2003とかで使ってたMS UI Gothicに代わるフォントなんですけど、今回これに苦しめられました。
font-family:"メイリオ",Meiryo,"Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","MS P Gothic","MS Pゴシック",Verdana,Arial,sans-serif;
てな感じで指定してるんですけど、OSがVistaと7だとデザインが崩れるんですよね。
なぜかというと、メイリオは全角文字がすべて固定幅のフォントであり、行間も従来フォントに比べて広いから。
なのでゴシックなどを想定して作ってるとデザインが崩れる。
font-familyでメイリオはずして、ゴシックを先頭にするとかで解決。
line-heightで行間を短くするのでもOKかな?
僕は今回line-heightで行間短くして対処しました。ゴシックだとなんか字が汚いんですよね・・・












