2007年07月07日
URLに自動的にリンクを貼りたい!
掲示板などでテキスト中にURLがある場合、自動的にリンクを貼りたかったが、めっちゃハマったのでココに記述。。。
正規表現を使う事で自動リンクが可能。
この正規表現は全く意味のわからない記号が並んでるので理解できなーい!…のでココでは説明できません。。。
様々なブログやサイトで正規表現について解説されてるので検索して下さい。
今回したかったのはURLの正規表現。
あるサイトを参考にして文中にURLがあった場合自動的にリンクを貼るかテストしてみた。
…でけた…!!
しかーし!URLの中に『-(ハイフン)』があった場合そこからリンクが貼られないではないか!!
ちゅーことで色々なサイト作成者様のお力を借り、自分なりに書き直したのが下です。
<?php
$com = "元気ですかー!! http://www.sample-123.co.jp てすと";
$com = ereg_replace("(https?|ftp)(://[[:alnum:]¥+¥$¥;¥?¥.%,!#~*/:@&=_-]+)","¥¥1¥¥2",$com);
echo $com;
?>
正規表現を使う事で自動リンクが可能。
この正規表現は全く意味のわからない記号が並んでるので理解できなーい!…のでココでは説明できません。。。
様々なブログやサイトで正規表現について解説されてるので検索して下さい。
今回したかったのはURLの正規表現。
あるサイトを参考にして文中にURLがあった場合自動的にリンクを貼るかテストしてみた。
…でけた…!!
しかーし!URLの中に『-(ハイフン)』があった場合そこからリンクが貼られないではないか!!
ちゅーことで色々なサイト作成者様のお力を借り、自分なりに書き直したのが下です。
<?php
$com = "元気ですかー!! http://www.sample-123.co.jp てすと";
$com = ereg_replace("(https?|ftp)(://[[:alnum:]¥+¥$¥;¥?¥.%,!#~*/:@&=_-]+)","¥¥1¥¥2",$com);
echo $com;
?>
2007年07月05日
html拡張子でPHPを実行
.htaccessを使用する。
※ロリポップでは使用可能。さくらインターネット不可。
Apacheを利用しているWEBサーバーで、「.htaccess」使用の許可があれば、この方法が利用できる。「.htaccess」は、サーバーの設定を変更できるファイルという風に考えればよい。
Apacheを使用していない場合は、この方法は使えない。
設定は、非常に簡単で「.htaccess」ファイルに、次のコードを記載してサーバーにアップロードするだけ。(.htaccessにおけるコメントの書き方は、perlと同じく「#」を使います。)
「.htaccess」というファイル名は、Windowsでは作成できませんので、「htaccess.txt」などというファイル名で作成し、アップロード後に変更すればOKです。
# 全てのPHPコードをHTMLのように作成する
AddType application/x-httpd-php .htm .html
これで、拡張子が「.html」と「.htm」のファイルの中に書かれたPHPスクリプトが実行されるようになります。
ロリポップでは、作成した「.htaccess」ファイルを設定したいフォルダにFTPでアップロードし、アップロード後、パーミッションを604に設定する必要がある。
また、「.htaccess」の設置されたディレクトリ、およびそのディレクトリ以下全てのディレクトリに対して、この設定が適用される。
例えば、 『 /abc 』 『 /abc/123 』 『 /456 』 『 /789 』 という4つのディレクトリが有ったとして、.htaccessを 『 /abc 』 に置いた場合、 設定が適用されるのは 『 /abc 』 『 /abc/123 』 の2つのディレクトリになる。
【参考URL】
※ロリポップでは使用可能。さくらインターネット不可。
Apacheを利用しているWEBサーバーで、「.htaccess」使用の許可があれば、この方法が利用できる。「.htaccess」は、サーバーの設定を変更できるファイルという風に考えればよい。
Apacheを使用していない場合は、この方法は使えない。
設定は、非常に簡単で「.htaccess」ファイルに、次のコードを記載してサーバーにアップロードするだけ。(.htaccessにおけるコメントの書き方は、perlと同じく「#」を使います。)
「.htaccess」というファイル名は、Windowsでは作成できませんので、「htaccess.txt」などというファイル名で作成し、アップロード後に変更すればOKです。
# 全てのPHPコードをHTMLのように作成する
AddType application/x-httpd-php .htm .html
これで、拡張子が「.html」と「.htm」のファイルの中に書かれたPHPスクリプトが実行されるようになります。
ロリポップでは、作成した「.htaccess」ファイルを設定したいフォルダにFTPでアップロードし、アップロード後、パーミッションを604に設定する必要がある。
また、「.htaccess」の設置されたディレクトリ、およびそのディレクトリ以下全てのディレクトリに対して、この設定が適用される。
例えば、 『 /abc 』 『 /abc/123 』 『 /456 』 『 /789 』 という4つのディレクトリが有ったとして、.htaccessを 『 /abc 』 に置いた場合、 設定が適用されるのは 『 /abc 』 『 /abc/123 』 の2つのディレクトリになる。
【参考URL】
2007年07月02日
ブログやサイトでソースをそのまま表示
ブログやホームページでタグの説明やソースを載せて解説したい場合、ソースやタグをそのまま表示させたい場合がよくあるので、その方法を記述。。。
『 < 』 『 > 』 『 " 』 『 & 』をスペシャル・キャラクタ(特殊文字)に置き換えてソースを書く。
< … <
> … >
" … "
& … &
【サンプル】
<br> … <br>
※ちなみにスペース(空白)は
【参考URL】
http://www.est.hi-ho.ne.jp/suikodow/pc/html_pre.htm
『 < 』 『 > 』 『 " 』 『 & 』をスペシャル・キャラクタ(特殊文字)に置き換えてソースを書く。
< … <
> … >
" … "
& … &
【サンプル】
<br> … <br>
※ちなみにスペース(空白)は
【参考URL】
http://www.est.hi-ho.ne.jp/suikodow/pc/html_pre.htm
2007年07月02日
getimagesize();「画像サイズを取得」
array getimagesize ( string ファイル名[, array &imageinfo] )
ファイル名で指定した画像の大きさを取得し、画像ファイルの「型」とIMGタグで使用される画像の「高さ」と「幅」を表す文字列を返します。
ファイル名が存在しない(または画像でない)場合にFALSEを返し、E_WARNINGレベルのエラーが発生します。
画像ファイル名に半角スペースが含まれる場合はエンコードする必要があります。
Ex. photo desu.gif→photo%20desu.gif
【返り値の連想配列】
[0] 画像の幅(px)
[1] 画像の高さ(px)
[2] 画像の種類(↓表示される数字の意味)
※実際表示される数字は1桁の場合、数字の前に『0』は付きません。
01 = GIF
02 = JPG
03 = PNG
04 = SWF
05 = PSD
06 = BMP
07 = TIFF(intel byte order)
08 = TIFF(motorola byte order)
09 = JPC
10 = JP2
11 = JPX
12 = JB2
13 = SWC
14 = IFF
15 = WBMP
16 = XBM
[3] width="xxx" height="xxx" (IMGタグで直接利用できる文字列)
[bits] RGB画像の場合に3、CMYK画像の場合に4
[channels] カラーの数
[mime] 画像のMIMEタイプ
【サンプル】
<?
list($width, $height, $type, $attr) = getimagesize("test.jpg");
echo "$width<br>¥n";
echo "$height<br>¥n";
echo "$type<br>¥n";
echo "$attr<br>¥n";
echo "<img src=¥"test.jpg¥" ".$attr."><br>¥n";
//<img src="test.jpg" width="640" height="480">
print_r(getimagesize("test.jpg"));
?>
【参考URL】
http://f32.aaa.livedoor.jp/~azusa/index.php?t=php&p=image
ファイル名で指定した画像の大きさを取得し、画像ファイルの「型」とIMGタグで使用される画像の「高さ」と「幅」を表す文字列を返します。
ファイル名が存在しない(または画像でない)場合にFALSEを返し、E_WARNINGレベルのエラーが発生します。
画像ファイル名に半角スペースが含まれる場合はエンコードする必要があります。
Ex. photo desu.gif→photo%20desu.gif
【返り値の連想配列】
[0] 画像の幅(px)
[1] 画像の高さ(px)
[2] 画像の種類(↓表示される数字の意味)
※実際表示される数字は1桁の場合、数字の前に『0』は付きません。
01 = GIF
02 = JPG
03 = PNG
04 = SWF
05 = PSD
06 = BMP
07 = TIFF(intel byte order)
08 = TIFF(motorola byte order)
09 = JPC
10 = JP2
11 = JPX
12 = JB2
13 = SWC
14 = IFF
15 = WBMP
16 = XBM
[3] width="xxx" height="xxx" (IMGタグで直接利用できる文字列)
[bits] RGB画像の場合に3、CMYK画像の場合に4
[channels] カラーの数
[mime] 画像のMIMEタイプ
【サンプル】
<?
list($width, $height, $type, $attr) = getimagesize("test.jpg");
echo "$width<br>¥n";
echo "$height<br>¥n";
echo "$type<br>¥n";
echo "$attr<br>¥n";
echo "<img src=¥"test.jpg¥" ".$attr."><br>¥n";
//<img src="test.jpg" width="640" height="480">
print_r(getimagesize("test.jpg"));
?>
【参考URL】
http://f32.aaa.livedoor.jp/~azusa/index.php?t=php&p=image

