2011年3月31日木曜日

文字化け修正方法


初期設定は、EUC-JPになっているようです。
まず日本語を使うに当たって、PHPの基本として、文字コードはUTF-8を使用すべき
ってことなので、UTF-8で設定していきます。

XAMPPのインストールは、Cドライブの直下っていう前提。
まずは下に書いてる5つのファイルを書き換える。
C:\xampp\apache\bin\php.ini
C:\xampp\php\php.ini
C:\xampp\php\php5.ini
C:\xampp\php\php4\php.ini
C:\xampp\php\php4\php4.ini

この.iniファイルっが、PHPの初期設定をしているファイルになります。
よく分からんことがいっぱい書いてあるけど、先頭にある;(セミコロン)がコメントアウトの意味らしい。
初期設定では、mbstring(マルチバイト文字:つまり日本語)の設定をしている行が
コメントアウトされているので、その辺を修正する。

これが初期状態
-----------------------------------------
1 ;mbstring.language = Japanese
2 ;mbstring.internal_encoding = EUC-JP
3 ;mbstring.http_input = auto
4 ;mbstring.http_output = SJIS
5 ;mbstring.encoding_translation = Off
6 ;mbstring.detect_order = auto
7 ;mbstring.substitute_character = none
8 ;mbstring.func_overload = 0
-----------------------------------------
これらのセミコロンを取って、
2,4,5行目を以下のように変えてみましょう。
-----------------------------------------
2 mbstring.internal_encoding = UTF-8
4 mbstring.http_output = UTF-8
5 mbstring.encoding_translation = On
-----------------------------------------
これでPHP側の設定は終わり。

それでもデータが文字化けしている場合。
C:\xampp\apache\bin\php.iniの中に
magic_quotes_gpc = On → magic_quotes_gpc = Off に変更で文字化け解消しました。

どちらを先に行っても問題ありませんでした。
ちなみに、kentPHPは、両方で文字化け解消しました。

ループ処理(while文、do while文)


ループ処理をすることで、同じコードを何行も記述せずにすむ処理とは?
例:式の条件が$xが50未満の時、50以上になったときループ処理からぬける方法
while文
<?php
$x = 0;
while($x < 50){
echo $x;
$x++;
}
?>

出力結果:012345~4546474849

do while文
<?php
$x = 0;
do{
echo $x;
$x++;
}while($x < 50);
?>

出力結果はどちらも同じとなる。
———————————
$x++ 加算(A+1)
$x–  減算(A-1)
++$x (A+1)+1
–$x  (A-1)-1
———————————
$x && $y xもyもTURE
$x || $y xかyがTURE
———————————
$x == $y xとyが等しい
$x < $y xがy未満 $x <= $y xがy以下 $x > $y yがx未満
$x => $y yがx以下
——————————–
$x 「while」文と「do while文」の使い分け方
条件に$x = 10以上を追加追加した場合。
while文
<?php
$x = 10;
while($x >=10 && $x < 50){
echo $x;
$x++;
}
?>

$x=10のため処理は実行されない。

<?php
$x = 10;
do{
echo $x;
$x++;
}while($x >= 10 && $x < 50);
?>

実行される。
※do while文は、do{ 書かれた処理を1度実行し、その後whileに書かれた処理されます。

日付と時刻を扱う関数とは?


date関数とは?現在の時刻を取得したり、更新した時刻書き込んだりする為に使用される。
mktime関数?何日後、何ケ月前が何年何月何日だったか知るのに使用できる。

date(“Y/m/d H:i:s”); = = 2011/03/31 14:55:12
mktime(時間,分,秒,月,日,年);
例:5日後がいつか知りたい場合date関数とmktime関数を使って記述します。
<?PHP
$y = date(“Y”);
$m = date(“m”);
$d = date(“d”);
$after_5day = mktime(0,0,0,$m,$d+5,$y);
echo date (“Y年m月d日”,$after_5day);
?>

ブラウザーで確認。なぜか意味不明な文字が・・・
コマンドは間違っていないのに…なぜ文字化け?
格闘した結果、メニュー文字化け修正方法をご確認ください。

2011年3月30日水曜日

if文以外の複数条件の場合


if文より少し分かりやすい、複数条件分けに使用できるswitch文
日付のフォーマット(date(日付フォーマット))に従って、switch文を作成。

date("Y/m/d H:i:s")  Y:西暦年 m:月 d:日 H:時 i:分 s:秒 w:曜日
例:今日は何曜日?
<?php
switch(date(“w”)){
case 0:
echo “今日は日曜日です。”;
break;
case 1:
echo “今日は月曜日です。”;
break;
case 2:
echo “今日は火曜日です。”;
break;
case 3:
echo “今日は水曜日です。”;
break;
case 4:
echo “今日は木曜日です。”;
break;
case 5:
echo “今日は金曜日です。”;
break;
case 6:
echo “今日は土曜日です。”;
break;
default:
echo “ここにはきません(*^_^*)”;
}
?>

※case 値1:は決まり事。さらに、処理ごとに「break;」を入力することで各曜日から抜ける為に必要。
入力がされてないとループ処理が永遠に終わらないので注意とのこと。
※条件定義の最後にdefault:を入れることで終了を示します。省略してもかまいません。

条件式(if文)を覚えよう


if文というと難しく感じますが、英訳の通り「もし~っだたら?」
例:
<?php
$x = 10;
$y = 3;
if(($x == 10) && ($y == 3)){
echo “あいうえお”;
}else{
echo”かきくけこ”;
}
?>

if文は、式がTURE(X=3 Y=10)の時、その中が実行され「あいうえお」と表示されます。
そうでなかったときはその他=「かきくけこ」が表示されます。
---------------------------------------------------------------------
さらにelseifを使うと、条件の3段活用ができます。
<?php
$x = 10;
if($x == 1){
echo “あいうえお”;
}elseif($x == 3 ){
echo”かきくけこ”;
}else{
echo”さしすせそ”;
}
?>

Xの値が1の時、「あいうえお」と表示されます。
Xの値が3の時、「かきくけこ」と表示されます。
Xの値が10ですので、「さしすせそ」と表示されます。

PHPのコード記述の書き方を覚える!


使用するフリーソフト php_editorをyahooで検索するとすぐに見つかります。
見つからなかった方は、phpSpotからダウンロードするとより簡単です。
1.php_editorを起動させてください。
PHPコードの書き方の基本ルール
開始タグ「」の間に記述します。
表示させたい文字をダブルコーテーションで囲みます。
最後の文字のダブルコーテーション後に、セミコロンを入力します「;」
2.例:
<?php
echo "あ","い","う","え","お";
?>

入力後、保存ファイル名はなんでもかまいません。例:test.php
3.作成したtest.phpファイルを昨日インストールしたC:\xampp\htdocs\test.phpへ移動。
4.ブラウザーでhttp://localhost/test.phpで確認
「あいうえお」が表示されたのが確認できればOK。

プログラムチックに入力してみよう。
「あいうえお」の文字列を、変数の$kotobaに「代入」します。
例:
<?php
$kotoba=”あいうえお”;
echo $kotoba;
?>

ブラウザーでhttp://localhost/test.phpで確認
「あいうえお」が表示されたのが確認できればOK。
文字列結合演算子とは、左辺と右辺の文字列を結合する演算子。
PHPではドット(.)を文字列の演算子として使う。
例:
<?php
//ネコ何回?
echo”ネコが何回表示されるか?<br>”;
$neko = “ネコ”;
$kotoba = $neko ;
echo “$kotoba<br>”;

$kotoba = $kotoba .$neko .$neko .$neko;
echo “$kotoba<br>”;

$kotoba .= $neko;
$kotoba .= $neko;
$kotoba .= $neko;
$kotoba .= $neko;
$kotoba .= $neko;
echo “$kotoba<br>”;
?>

ブラウザーでhttp://localhost/test.phpで確認
「ネコ」が表示されたのが確認できればOK。
ネコが何回表示されるか?
ネコ(1回)
ネコネコネコネコ(4回)
ネコネコネコネコネコネコネコネコネコ(9回=4回+5回)
なぜ? A.=B  {A=A.Bは、AとBの文字列を結合して、ひとつの文字列になる為}

2011年3月29日火曜日

XAMPPにWordPressをインストール

初めに、http://localhost/xampp/にアクセスしてください。
続いて、左下のほうに、phpmyadminという設定項目がありますのでクリック。
セイキュリティ設定された方は、ユーザー名、パスワードを入力して実行ボタンでログインできます。

MySQL localhostの新規データベースを作成したいので、今回はwordpressというデータベースを作ります。画像を参考に設定してみてください。

新規データーベースを作成する。BOX枠にデーターベース名を入力後ww、
作成ボタンを押してください。

次に、WordPress | 日本語から、ファイルをダウンロード。
ダウンロードしたファイルを、Cドライブの中のxamppフォルダの中の、htdocsに移します。 http://localhost/wordpress/にアクセスしてみてください。






注意点として、xamppのMySQLのデフォルト値は、ユーザー名、root  セキュリティ設定された場合はそのパスワードを入力
設定されていない場合は、ユーザー名の部分にroot パスワードの部分は未記入でOKです。
※以上で設定完了となります。
再度、http://localhost/wordpress/にアクセスしてみてください。
これでローカル環境にてWordPressをテスト投稿できます。

XAMPPをインストール。

XAMPPとは、PHP開発環境に必要なMysql・PHP・Apacheを、簡単に一括でインストールソフトらいしい。
ローカル上で、phpの確認をできるすぐれものらしい。
例えば、WordPressをローカル環境でも使えるようになります。
※英語が苦手な自分としても、日本語対応も見つけたので安心して使えそうです。

XAMPPをダウンロードしてインストールを始めます。




c:ドライブ真下に、xamppフォルダを作り、インストール作業を行います。
完了後、ディスクトップにある、XAMPPショートカットキーを起動すると下記の表示にかわります。


ブラウザー「Firefox・Explorer・Chrome」を起動し、続いて、ブラウザのアドレスバーに、次のように入力してxampp初期画面に移動します。http://localhost/

ネットでいろいろ調べた結果セキュリティをかけた方がよということで…
セキュリティをかけてみました。まず、メニューからセキュリティを選択

http://localhost/security/xamppsecurity.phpをクリックしてください。

パスワードの設定をして完了となります。
さらにXAMMPの言語設定でUTF-8を設定しても文字化けが起こる場合があります。
ブログ投稿タイトルの修正方法を確認してみてください。

日本語サイトが見つからない方もいらっしゃるようなのでここからダウンロードしてみて下さい。