トップページ⇒php
1001コメント315KB

【PHP】質問スレッド Part15

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん04/03/07 02:03ID:???
PHP全般の質問スレです。
上級者用や雑談スレを立てたくなった場合は後から適宜立ててください。

■本家
 http://www.php.net/

■日本 PHP ユーザ会
 http://www.php.gr.jp/

■PHP マニュアル
 http://www.php.net/manual/ja/

■PEAR マニュアル
 http://pear.php.net/manual/ja/

過去スレ, 関連スレ及び注意事項等は、 あふぉが居なけりゃ>>2-5
0002nobodyさん04/03/07 02:06ID:???
Part1 : http://ebi.2ch.net/php/kako/982/982687820.html
Part2 : http://pc.2ch.net/php/kako/1003/10032/1003283567.html
Part3 : http://pc.2ch.net/php/kako/1013/10139/1013919792.html
Part4 : http://pc.2ch.net/php/kako/1022/10229/1022999539.html
Part5 : http://pc.2ch.net/php/kako/1031/10317/1031721334.html
Part6 : http://pc2.2ch.net/php/kako/1038/10389/1038988518.html
Part7 : http://pc2.2ch.net/php/kako/1044/10444/1044478561.html
Part8 : http://pc2.2ch.net/php/kako/1050/10502/1050249148.html
Part9 : http://pc2.2ch.net/php/kako/1057/10579/1057947512.html
Part10: http://pc2.2ch.net/php/kako/1064/10641/1064104114.html
part11: http://pc2.2ch.net/php/kako/1067/10676/1067635640.html
part12: http://pc2.2ch.net/test/read.cgi/php/1070639208/
part13: http://pc2.2ch.net/test/read.cgi/php/1073291978/
part14: http://pc2.2ch.net/test/read.cgi/php/1076163015/
0003nobodyさん04/03/07 02:06ID:???
  ☆  P  H  P  5  ☆
http://pc2.2ch.net/test/read.cgi/php/1056969979/

Pear
http://pc2.2ch.net/test/read.cgi/php/985665522/

【PHP】Smarty【Template】
http://pc2.2ch.net/test/read.cgi/php/1047225437/

■PHP関連の書籍(但しPHP出版系お断り)
http://pc2.2ch.net/test/read.cgi/php/985315574/
0004nobodyさん04/03/07 02:07ID:???
関連サイト

2ch Pear Wiki
http://pear.sakura.vg/

PHP Kitchien
http://www.phpkitchen.com/

PHP Developer
http://www.phpdeveloper.org/

phpPatterns
http://phppatterns.com/

Perl/PHP Translation
http://www.cs.wcupa.edu/~rkline/perl2php/
0005nobodyさん04/03/07 02:08ID:???
質問者の心得

http://www.redout.net/data/osietekun.html
0006nobodyさん04/03/07 02:09ID:???
スレ建て終了。
前スレの過去ログpart13のアドレスが違ってて焦った。
0007nobodyさん04/03/07 06:15ID:???
>>1
Z
0008nobodyさん04/03/07 11:49ID:jKMO9RlN
perlだと変数を定義していなくてもそのまま処理できたのですが
PHPだと変数が未定義ですとエラーが表示されてしまいます。

具体的に言うと、フォームからデータを送り、GETメソッドで取得し
$modeにregistやdeleteなどの文字を格納するようにしたいのですが、

$modeになにも入ってないとき、つまり

http://〜〜〜/test.php

とかでアクセスしたとき、$modeが未定義と出ます。

PHP.iniのほうでエラーを表示しないようにする方法があるのは分かるのですが、
そうしちゃっていいのでしょうか?
何かいい方法はないでしょうか?
0009nobodyさん04/03/07 11:53ID:qGgxd6Wh
>>8
定義されているかどうか調べりゃいいじゃん
0010nobodyさん04/03/07 13:17ID:???
または、しっかり変数を初期化しよう
0011nobodyさん04/03/07 14:09ID:???
>>8
それって、どうやったら再現できますか?
0012nobodyさん04/03/07 14:18ID:???
988 :nobodyさん :04/03/07 13:39 ID:???
>>984
定義しておけばいいだけの話。
echo $mode = !empty($_GET['mode']) ? $_GET['mode'] : ""; //undefined index errorは起きない
0013初心子04/03/07 16:02ID:AkFDBaOG
「AAA」という内容のHTMLファイルの表示と、PHPで1行「echo "AAA"」を実行
して表示する場合で、処理速度に差は出るのでしょうか。
また、出るとしたらどのくらいのアクセスからなんでしょうか。
例えば1秒に10アクセスぐらいでも差が出るでしょうか。
0014nobodyさん04/03/07 16:32ID:???
http://www.apache.jp/docs/programs/ab.html
0015nobodyさん04/03/07 16:37ID:JEnRe41E
fopen()で2chのdatを開き、fgetsで読み込もうと考えています。
この際、datを最初から全部読むのではなく
新しい方から100レスのみ、という読み込み方をしたいのです。

dat全体を読み込むのは出来た(whileでEOFまで取得)のですが、
「新しい方から100レスのみ」のやり方がわかりません。
fseek()などで何とかなるかと考えたのですが、
>http://"または"ftp://"フォーマット指定のfopen()により返されたファイルポインタに対しては使わないで下さい。
とかマニュアルに書いてあるし…。

何か良い方法があったらご教示願います。
0016初心子04/03/07 17:31ID:???
>>14
ごめんなさい、IIS5です。
0017nobodyさん04/03/07 17:33ID:???
>>15
fsockopenで接続して100レス分fgetする
0018nobodyさん04/03/07 18:14ID:???
>>15
l100
0019nobodyさん04/03/07 18:50ID:???
>>12
isset()
0020nobodyさん04/03/07 22:22ID:???
>>15
無理じゃないの?
*.datのレコード(1行)って固定長だっけ?
0021nobodyさん04/03/07 22:33ID:???
>>13
例えば
1. ABC<?php echo'ABC'; ?>ABC
2. ABCABCABC
となら2.の方が速いが、別に気にするほどの差ではない。
因みに""ダブルクォートと''シングルクォートの場合や、
echoとprintも処理に違いがあるので差があるのだが、
それも気にするほどではない。もっと気にしないといけないことは
幾らでもあろう。特に君は英語を読むことと、無駄に思えることでも
色んな知識を吸収しようとする努力せよ。
(16氏が示したツール(ApacheBench)はApacheでもIISだろうが使える)
0022nobodyさん04/03/07 22:48ID:???
>>15
fseekが使いたいなら、一度tmpなりのファイルに落としたらどう。
datの構造しらんので「新しい方から100レスのみ」するのに
先にparseとかせんでもいけるの?と思うけど。
0023nobodyさん04/03/07 23:00ID:???
>>15
各行の開始位置を記録したファイルを別に作る
00242104/03/08 02:53ID:???
>>13
1. ?>ABC<?php echo'ABC'; ?>ABC<?php
2. ?>ABCABCABC<?php
の感じのテスト(出力バッファ利用して貯めて)で、
大体1は2の120%ぐらい。つうても折れのローカル環境で 7.8e-7秒/回。
それが20%増しになったところでね、普通ゴミとか誤差とか呼ぶレベルでしょ。
0025nobodyさん04/03/08 11:34ID:/KXptFwq
ファイルアップロード機能を使いたいのですが、
move_uploaded_file
が使えません。なにも反応しません、エラーもでません。
で、copyは使えるようなのですが、機能に違いってありますか?
0026初歩的だけど04/03/08 11:55ID:???
変数と配列を比較して、
配列のどれか一つと一致するとTRUEを返す

はどうやったらいいの?
0027nobodyさん04/03/08 12:17ID:mEtMwEOB
>>26
配列の操作を行う関数は・・・・・・・配列関数
ttp://www.php.net/manual/ja/ref.array.php
0028nobodyさん04/03/08 12:19ID:???
>>25
move_uploaded_file()を使うとis_uploaded_file()で事前に確認する手間は省ける。
ま、copyを使う前にmove_uploaded_fileが使えない原因がどこかにあると思うが。

>>26
function array_manual_YOME($n,$array){
return in_array($n,$array);
}
0029nobodyさん04/03/08 12:21ID:???
>>27-28
サンキューエロイヒトたち
0030nobodyさん04/03/08 14:00ID:WZerhTAo
質問なのですが、
Apache 1.3.27
PHP 4.3.4 で
PC/携帯連動ページを作成しているのですが、
PCで正常に表示しているページを
require_once
で要求し、携帯に必要な部分の関数だけ実行しようとすると
携帯からは表示できない
というメッセージが出るのですが、
どのような事が原因でしょうか?
require_once
を記述しない場合は、
携帯でも正常に(ただし、何も表示されない)ページが見れます
何かアドバイスありましたらお願いします
0031nobodyさん04/03/08 14:02ID:???
まずApacheのバージョンを上げることかな?
00323004/03/08 14:05ID:???
>>31
え”?
古いバージョンは携帯不可なんですかひょっとして
ありがとうございました
0033nobodyさん04/03/08 14:07ID:???
文字列の最後の改行を取りたいのですが、
chopでいいんですか?
0034nobodyさん04/03/08 14:19ID:???
>>30
読み込んでるのが
>携帯からは表示できない
というメッセージを出す関数じゃないの
00353004/03/08 14:19ID:???
ぐわすみません
本番機は、
Redhat 9
Apache 2.0.40-21.9
でした
>>30の環境は、開発環境でした('A`)
00363004/03/08 14:24ID:???
>>34
require_onceで要求したページは、
if(IsMobile()==false){//PCからの場合、通常メニュー作成
SendHeader("ページタイトル");//ヘッダ送信
CreateMenuPage();//PC用メニュー作成
SendFooter();//フッタ送信
}
となっていて、これは、PCの場合にメニューを構築します
それ以外は、
CreateMobileMenu()
という関数を実行しているのですが
(現状はテストのみで、
中身は、
?><DIV>携帯用ページ</DIV><?php
だけの関数です
コレを、元のページindex_mb.phpから
require_onceすると、
ページを表示できないと携帯が言ってきます
セッション管理の為、別ページもrequire_once
しています(このページも関数のみで、HTMLは、出力しません)
0037nobodyさん04/03/08 14:29ID:???
>>36
試しに、if(IsMobile()==false)をif(1)にしてみて、どういうHTMLを吐いているかPCで確認してみれ。
0038nobodyさん04/03/08 14:30ID:???
>>36
>ページを表示できないと携帯が言ってきます

最近の携帯はすごいんですなぁ。
00393004/03/08 14:31ID:???
>>37
なるほど、ありがとうございますm(;∇;)m
これから実行いたします
00403004/03/08 14:32ID:???
>>38
や、すみません
PCでいうダイアログっぽいメッセージで、
「このページは表示できません」
ってメッセージがでる
という意味合いです('A`)
00413004/03/08 14:34ID:???
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<HTML>
<HEAD>
<META http-equiv="Content-Type" content="text/html; charset=EUC-JP">
<META http-equiv="Content-Style-Type" content="text/css">
<TITLE></TITLE>
</HEAD>
<BODY>
<BR><BR>
<TABLE>
<TR>
<TD>
<FORM action="kokyaku.php" target="data">
<INPUT type="submit" name="user_manage" value="ユーザー登録確認">
</FORM>
</TD>
</TR>
<TR>
<TD>
<FORM action="menu_data_init.php" target="data">
<INPUT type="submit" name="reserve_manage" value="予約情報">
</FORM>
</TD>
</TR>
</TABLE>
</BODY>
</HTML>
と出てきました(PC側)
0042nobodyさん04/03/08 14:38ID:???
>>40
もう、require_onceや携帯がどうのこうのという範疇じゃねぇ。
デバッグまで手伝えってか?

>>41
そもそも、携帯に対してEUC吐いてるの?
00434204/03/08 14:40ID:???
>>42の前文取り消し。勘違いした。
00443004/03/08 14:47ID:???
>>42
>>43
@前半>あ、イエ、チトワタクシの言葉不足でした('A`)
@後半>
EUC吐いてるの>ハヒ、本来は、S-JISにすべきデスネ('A`)
00453304/03/08 15:11ID:???
だれか〜
■ このスレッドは過去ログ倉庫に格納されています