弐ch編集のphp講座
■ このスレッドは過去ログ倉庫に格納されています
まず最初は<?php
print("始まり");
?>
これでいいです じゃあ次は条件判断してみよう!
if($hoge="hoge")
{
print("正解");
}
{
print("残念");
}
解説
if(式)これがあうと正解が返され違うと残念が返されます 丁度いい。perlもphpも分からんから教えてもらおう。 PHPは、PHP: Hypertext Preprocessor の略 PHPの読み方は「ピップ」
有名なのは「エレキ版」かな あなたは
if(!$A)
{
echo "A";
}
派ですか?私は
if(!$A){
echo "A";
}
派です。 PHPに変えてからというもの
めっきりボールが飛ばなくなりました。
どうしたらいいですか? ただでさえ人少ないのにPHP質問スレ分散させんなボケ。
-----------------------終了----------------------- 今までの僕はまさに貧弱な男の見本だった。
しかしPHPを(以下略 素朴な疑問
>PHPは、PHP: Hypertext Preprocessor の略
HypertextのHとPreprocessorのPでHPと略すのが妥当じゃないのか? 元々はパーソナルホームページの略だったから。 >>17
thanks
Personal Home Page
ホームページつーことでさらにphpが易しく感じられる。 ああごめんelse入れんの忘れてた、また2けんにネタにされる、、、、
じゃあ次はファイル操作
$hoge="log.txt"
fopen("$hoge","r")
これでlog,txt使えるようになんのよ >>4
$hoge = "hoge"
Perlじゃ=は代入演算子だが、PHPは比較演算子なんだな。}
>>21
なにいってんだよ
「弐ch編者=zenhitei」だろ、、アホクサ
巣へ帰れ! あんま寝てないからいろいろ間違いだしちゃうや、、
宿題カウンタを作ってみよう!
いきなりかょ、、、
もっと基本からちゃんと教えてくれぃ #!/usr/bin/perl
use strict;
open(IN,"count.dat") or die $!;
my $count = <IN>;
close IN;
unless $count{
print "0";
exit;
}
$count++;
open(OUT,">count.dat") or die $!;
print OUT $cout;
close OUT;
print $cout;
__END__
完 >>26 OK!
phpは <?php が始まり宣言 ?> が終了宣言
とりあえず何かを表示さしてみようって事でprtint("表示させたい物");
で何かを表示させます。
宿題
prirntを使いmegabbsと表示させてみろ
宿題見てやるから
次回
条件判断してみよう 先生!厨房質問なんですが、
phpって動作させるとき、perlで書かれたcgiと同じようにパーミッションを設定したらいいの?
あと、拡張子は.phpでいいの? >>29
すまん疲れてて間違えてしまった
みなさん正確にはprintです。
>>30
パーミッションはCGIと同じようにでいいよ、拡張子はphpでね! <?php
print("megabbs");
?>
ここまでは大丈夫。
てか、phpって644でいいんじゃない? >>32
じゃ次、$megabbsが弐編だった場合にわーいと返す処理
$←これ変数マーク、変数とは箱みたいなもんだよ
<?php
$megabbs="弐編";
if($megabbs="弐編")
{
print("わーい");
}
else
{
print("うわーん");
}
?>
解説
まず1行目$megabbsに文字列弐編が代入される
そしてif関数(括弧内の式が合うとTrueが返され間違えるとファールだったけ?が返される)
それによってわーいが返されるわけだ
宿題
$megabbsがzenhiteiだった場合まずーと表示され
違う場合わーいと表示されるスクリプト書いてみ <?php
$megabbs="zenhitei";
if($megabbs="zenhitei"){
print("まずー");
} else {
print("わーい");
}
?>
OK、OK!着いて逝けそう。 >>34
イイ!
じゃ次ね本当は正規表現とか配列変数やりたいけどあれは
楽しくないから作りながら覚えていこうって事で。
フォーム+ファイル操作
これとフォームがわかると何でもできるようなもん
<HTML>
<BODY>
<FORM method="POST" action="nihen.php"><INPUT size="20" type="text" name="msg"><INPUT type="submit" value="送信"></FORM>
</BODY>
</HTML>
とりあえずファイル操作は少し後にしてフォームから投稿されたのを表示
さしてみよう!って事ではじめます
action="nihen.php"ここはnihen.phpファイルを動かすって事です
name="msg"これは投稿された文字が変数$msgに格納されんのよ
という事は!!!
nihen.phpファイルに
<?php
print("$msg");
?>
これで投稿された文字列が表示されたらOK!
次はファイル操作、次覚えればここまでの力だけでほとんど簡単
な事ならできるようになるから。
じゃ寝る =====forn.html=========
<HTML>
<BODY>
<FORM method="POST" action="zenhitei.php">
<INPUT size="20" type="text" name="msg" value="zenhitei">
<INPUT type="submit" value="送信"></FORM>
</BODY>
</HTML>
=====zenhitei.php======
<?php
print("$msg");
?>
ほうほう。phpって、Content-typeとかっているのかな? ____
/∵∴∵∴\
/∵∴∵∴∵∴\
/∵∴∴,(・)(・)∴|
|∵∵/ ○ \|
|∵ / 三 | 三 | / ̄ ̄ ̄ ̄ ̄
|∵ | __|__ | < うるせー馬鹿!
\| \_/ / \_____
\____/
>>34
ためしに2行目を
$megabbs = "baka";
にしてみ。
どうなるでしょうか。宿題。 >>44
<?php
$megabbs="baka";
if($megabbs="zenhitei"){
print("まずー");
} else {
print("わーい");
}
?>
つまり、わーい? >>46
OK!
おし、じゃあ今日もはじめるね。
明日は用事があるから無しでね(∵)b
ファイル操作 〜投稿されたのを自分のファイルに書きこんでみよう〜
まずファイルを扱うにはfopen関数を使いファイルを開かなければなりません
と言う事でこのまえ教えたフォームだします
<FORM method="POST" action="nihen.php"><INPUT size="20" type="text" name="msg"><INPUT type="submit" value="送信"></FORM>
そしてnihen.phpの中身
<?php
$megabbs="nihen.txt";
$zenhitei = fopen("$megabbs",a);
fwrite($zenhitei,$msg);
fclose($zenhitei);
?>
解説
1行目
$megabbsにnihen.txt入れる
2行目
$zenhiteiにfopen関数で開けた$megabbsを代入している
このaと言うのは種類みたいなもんで今は気にすんな、後から詳しく教える
3行目
fwrite関数というので$zenhiteiに$msgを書きこんでるんだ
fwrite(書き込む対象,書き込まれる対象);
4行目
fopenで開けたんだから閉める決まりがあると覚える
これでnihen.txtを覗いたら投稿された文字がはいってはずだ
宿題
これを暗記し苦もなく使えるようにする
次回
書き込みができたのでそれを読み出して表示させちゃおう! ↑
急いで作ったんでバグあるかもしんないが許して!
番外編ftpにうpしないでphpの練習をする
http://jp.php.net/do_download.php?download_file=php-4.1.1-Win32.zip
ここでダウンロードして
Zipを適当な場所に解凍します。(例:c:\php)
c:\php\php4ts.dll を c:\WINNT\System32(98ならc:\Windows\System)にコピーします。
c:\php\php.ini-dist を php.ini にリネームして
c:\WINNT(98ならc:\Windows) にコピーします。
http://www.st.rim.or.jp/~nakata/
ここからhttpdを落とす
タスクバーに黄色いアイコンが出るので、「右クリック」→「オプション一般(G)」を開きます
ドキュメントルート、すなわちPHPを動かすホームディレクトリを設定します。
次に拡張子のところの「追加」をクリック
実行プログラム」にc:\php\php.exe を指定
動作確認してみましょう
まず <?phpinfo();?> と書いたテキストファイル test.php を用意して、設定したドキュメントルート(私の場合 D:\php)に置きます。
http://127.0.0.1/test.php
ここにアクセスして↓のようなのが出れば PHPが動いてます。やったね
もしエラーが出るなら、とりあえず普通のHTMLが見れるか試してみてください
ここをパクッタだけなんだけどね
http://php.s3.to/tt/inst1.php <?php
$megabbs="nihen.txt";
$zenhitei=fopen("$megabbs",a);
fwrite($zenhitei,$msg);
fclose($zenhitei);
?>
おーし。とりあえず4回くらい見ないで書いてみたぞ。
あ、番外編は既にApache+php4組みこんであるわ(^_^;) >>46
それ実際動かしてみ。
どうなるでしょうか。宿題。 http://s7.xrea.com:8080/~readcgi/nihen/test1.php (test1.phps)
http://s7.xrea.com:8080/~readcgi/nihen/form.html
置いてみたよ。 本なんかいらねぇだろ。
ここさえあれば十分
ttp://www.php.net/manual/ja >>53
そのリンクアソシエイトプログラムのリンクだからそこクリックして買うと
弐編にお金が入っちゃうぞ!
だまされるな、気をつけろ。
ちなみに以下なら安心
番外編2〜おすすめ参考書籍〜
俺が買ったphp本
http://www.amazon.co.jp/exec/obidos/ASIN/4871938735
これがあれば簡単に基礎を覚えられる
http://www.amazon.co.jp/exec/obidos/ASIN/4798101338
これでいくらでも自分をレベルアップさせてけるんでお勧め
http://www.amazon.co.jp/exec/obidos/ASIN/4873110343
安いんで本屋に今日予約してきた、一冊あればいいと思う
ifの条件式で値を代入しちゃうやつの
薦める本なんて買えない。 例えば・・・
if ($temp = &handan) { print $temp; }
sub &handan {
if (!$in{'name'}) { $errormsg.='名前書けやオラ!'; }
if (!$in{'mail'}) { $errormsg.='Mailも使えんのか己は!'; }
return $errormsg;
} Perl/CGIより便利だってところを教えてくだぁさい。 今月の末日は何日?
echo date("t");
セッションの値は?
session_start();
$HTTP_SESSION_VARS;
>64
すげぇ楽だよ
CPANみたいなモジュールが無くても楽なとこ。 ダブルコーテーションのつけるつけないはどう違うの? >>60
いやここからコピペしたんだけど、、、
あんた正確がめついね、そんなに人に得されんのが嫌なの?笑い
http://www.cityfujisawa.ne.jp/~louis/apps/phpfi/php-books.html
>>61
指摘ありがと、でも次から俺がミスしたら訂正って言う形で協力
してくれんのが一番みんな楽しいと思うんでよかったら協力してくらはい
>>64
最高だよマジでphpはwebprog専用言語だから便利な関数いっぱい
お父さんはperlだけど、兄はRubyです
今日は受験だったんで講座は無しでした、明日やるね。
あと俺は弐編の双子の子供の弟2ch編集です DBクラスの使い方...
if(DB::isError($db=DB::connect($dsn)))
die(DB::errorMessage($db));
if(DB::isError($res=$db->query($sql)))
die(DB::errorMessage($res)." :$sql");
while($rows=$res->fetchRow(DB_FETCHMODE_ASSOC))
foreach($rows as $field => $value)
echo "$field -> $value<br>\n";
$db->disconnect();
>>68
うわ〜んそんな深いとこじゃなくて、もっと違う事教えてあげてYO〜
じゃあfopen関数でファイルの読み出し明日教えるので
for使うから教えてあげといてくれや〜 >>70
OK!暇ができたんでな。
例えばmegabbsを3回連続で表示させたいと思うだろ?
そしたらこういうソース書くんだよ
<?php
for($megabbs=0;$megabbs<3;$megabbs++;)
{
print("megabbs<BR>");
}
?>
解説
for(初期化処理でここでは$megabbsは0と宣言された;
条件式ここでは$megabbsは3までと条件がついた;
ここで最後の処理、ここでは$megabbsの0を1ずつあげるよと決めた;)
{
print("megabbs<BR>←改行ってタグ");←そういう式を実行する場所、
}
?>
わからない事あったら質問して
宿題
forを使いphpと5回繰り返し表示したら止まるスクリプトを書こう! こんなんでよかと?
<?php
for($i=0; $i<5; $i++)
{
print "php<br>";
}
?>
出力したソースも奇麗に見せたいなら
<?php
for($i=0; $i<5; $i++)
print("php<br>\n");
?> おお。やっぱりphpってcに似てるなー。
<?php
for($i=0;$i<5;i++) {
print("php<br>");
}
?> <?php
$i=5;
for(;;){
if(!$i--) break;
print "test<br>\n";
}
?> <?php
$i=5;
for($i--){
print "test<br>\n";
}
?> 補足:
$i++;より++$i;の方が若干処理が早くなるらしい <?php
$arr = array("test","test","test","test","test");
for( ;list($key,$val)=each($arr); )
print $val."<BR>\n";
?> <?php
$arr = array("t","e","s","t");
for($i=0;$i<5;++$i){
for( ;list($key,$val)=each($arr); )
print $val;
print "<BR>\n";
reset($arr);
}
?> 最適化>78
<?php
$arr = array("test","test","test","test","test");
foreach($arr as $val)
print $val."<BR>\n";
?> 漏れのソースコードにfor文って使ったこと無いけど必要?
whileだけでループ処理はOKじゃない? <?php
$arr[0]="t";
$arr[1]="e";
$arr[2]="s";
$arr[3]="t";
for($i=0;$i<5;++$i){
for( $j=0;$j!=4;$j++ )
print $arr[$j];
print "<BR>\n";
}
?> >>83
おれもWhileを多用する。forは使わない。
今日からPHPをはじめた。
Professional PHP Programingを187Pまでよんだ。
C言語ぽくてPerlより分かりやすいね。
ところで、foreach()ってPHP4からの関数? って言いながらも
<?php
for($i=0; $i < 10; ++$i){
for($j=0; $j < 10; ++$j)
printf("%3d", $i*$j)
print "\n";
}
?> >86
そういやforeach()ってPHP3じゃ使えないみたい。
関数ではなくifやwhileみたいな制御構造だけど。 >>89
Profesional PHP Programingって本に載ってなかったから
そうかなと思った。
PHP4はマニュアルだけでいいかなと思って、この本しか買わなかった。
>86
正解。
PHP4から。
まあ、今からやるなら4のが良いんだろうな。
>40
正直PEARに関する資料少なくて萎えてる。
わかりやすく解説してる所あれば良いのだけど。 あんたら難しすぎです。
1 名前:read.cgi ver5.25 (01/10/12)投稿日:2001/04/12(木) 15:11
あんたら難しすぎです。
| おすすめ| 2chサーバ監視所| BinboServer| Hikky.Zansu.com| 無料サービス|
さぶドメインシリーズ登場
*****.syo-ten.com
*****.gasuki.com
*****.zansu.com
おすきな名前を無料で使えます。早い者勝ち。
工夫しだいで、楽しさ100倍。
深夜でも快適なレンタルサーバサービス(n)
あの巨大なサイトも使っています。
--------------------------------------------------------------------------------
read.cgi ver5.25 (01/10/12)
-------------------------------------------------------------------------------- >>93
んなことないよ。俺だって今日はじめたばかりだよ? cもperlも習ってないのにいきなりforeach()とか言われても、、、 俺は仕事で半年くらい。
ただ、他の言語(C,VB,C++,perl)辺りは入門書程度しかできん。 あ、でも仕事でC言語3年やってる。オラクルとPro*Cも。
仕事でCGI作ってもC言語だからPerlも使わないな。
初めてこのスレ見た。なんか、for文見てCに似てるなぁ、って思ったら、やっぱり同じ事書いてる人がいた。
面白そうだからちょっとやってみようかなぁ・・・ PEARでフォーム表示させるクラス、
あれなかなか便利だよ。
あとMacでPHPだけど、
OS Xなら>>87のページにいって
説明どおりにインストールすればできる。
というか、ボタン1つでApacheが起動するOS Xで
PHPを使わないでどうしますか。
UNIXの勉強にもなるよ。 ■ このスレッドは過去ログ倉庫に格納されています