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

【PHP】下らねぇ質問はID出して書き込みやがれ 83

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2009/04/06(月) 04:14:58ID:???
質問者はまず>>1を良く読むこと(必須!)
過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。

◆前スレ
【PHP】下らねぇ質問はID出して書き込みやがれ 82
http://pc11.2ch.net/test/read.cgi/php/1236532468/

◆質問用テンプレ
【OS名】vine linux
【PHPのバージョン】php5.26
【連携ソフトウェア】mysql
【質問内容】

◆質問する時の注意
・ スレを上げて自分のIDを表示させること。(メール欄に何も記述しない。専ブラのsageチェックを外す)
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に関連リンクの公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
(PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。)

◆質問後の注意
・2回目以降は最初に質問した際のレス番号を入れて、偽者防止に必ずIDを表示させること。
・解決しなくても回答をもらった場合はお礼を言うこと。
 (荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)

◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。

【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
0020nobodyさん2009/04/06(月) 13:59:08ID:???
>>18
とりあえず、言動に気をつけましょう
そんなんでは教えてもらえませんよ
0021192009/04/06(月) 14:02:08ID:???
欲読め

最近のスクリプト言語は機能が多く、基本的な機能はほとんど実装されているので、
アルゴリズムをどうこうするより、どの機能を使うか選ぶ方が重要だったりしますね(コーディングの効率的にも)。
002272009/04/06(月) 14:17:56ID:???
じゃあwhileでもいいです。
でも>>19のように fgets($h,4096);←4096とか数字は入れたくない。なぜならすべてのファイルに対応できないから。
これでお願いします。
0023nobodyさん2009/04/06(月) 14:19:19ID:???
>>22

>>20
0024nobodyさん2009/04/06(月) 14:20:05ID:???
>>10>>19を読めば自分でできますよね
0025nobodyさん2009/04/06(月) 14:21:09ID:???
>>7
答えは出てますね
ここは手取り足取りスレじゃないんで
>>7はもう放置でおk

はい次の質問どうぞ
002672009/04/06(月) 14:28:17ID:???
>>19
初心者を馬鹿にするのはどうかと思いますよ(自分も初心者のくせに)
ちなみにそれやるなら
while($b = fgets($fp,4096)){ }
こっちのほうが美しいですけどね。
0027nobodyさん2009/04/06(月) 14:30:07ID:???
>>7
は、アホ過ぎる。こんなの小学生でも分かるのに。
0028nobodyさん2009/04/06(月) 14:43:24ID:???
>while($b = fgets($fp,4096)){ }
>?こっちのほうが美しいですけどね。


顔真っ赤っかで必死に反論考えたんだろうけど、それじゃ動きませんよっと
とりあえず態度を改めた方がいい
0029nobodyさん2009/04/06(月) 14:48:45ID:???
>>26
それだとファイルの内容によってはエラーになるんだよな
初心者乙
003072009/04/06(月) 14:53:38ID:???
>>28
普通に動きますよっと

>>29
???
0031nobodyさん2009/04/06(月) 14:55:06ID:???
2人のアホが言い合いしてるのは暇つぶしにはいいよね
0032nobodyさん2009/04/06(月) 17:44:29ID:???
fopenで開いたものをforeachにかけるとかwwwww
バカもほどほどにしろよw
0033nobodyさん2009/04/06(月) 18:02:44ID:???
手っ取り早く行イテレーションしたいならSplFileObjectでもどうぞ。
003472009/04/06(月) 18:17:24ID:???
>>33
日本語が読めないらしいですね
foreachでお願いしますね
0035nobodyさん2009/04/06(月) 18:41:19ID:???
まるまる書いてやらないと解らないのか?
$file = new SplFileObject('file.txt');
foreach($file as $line) {
// some operation
}
unset($file);
0036nobodyさん2009/04/06(月) 19:26:35ID:fgZcgjRX
反論者もIDだせばいいのにね。
0037nobodyさん2009/04/06(月) 19:51:36ID:???
>>35
php5限定かよ
0038nobodyさん2009/04/06(月) 20:04:19ID:???
>>32涙目wwwww
0039nobodyさん2009/04/06(月) 20:24:04ID:???
PHPでC#とかにある様な

try
{

}
catch(Exception Error)
{
  Debug.WriteLine(Error.Message);
}
finally()
{

}
とかはありませんか?
0040nobodyさん2009/04/06(月) 20:26:56ID:???
try catchもあるよ
0041nobodyさん2009/04/06(月) 20:27:22ID:???
finally以外あるよ。
gotoよりもこっち実装しろと
0042nobodyさん2009/04/06(月) 20:27:41ID:???
はやく finally を実装してくれ。
0043nobodyさん2009/04/06(月) 20:32:26ID:???
>>40 〜 >>42
サンクス。
試してみます。
0044nobodyさん2009/04/06(月) 20:59:04ID:2EYsJzxb
imagemagick で画像を保存して表示されるのじゃなく
保存せずにブラウザーに表示するにはどんな方法があるんでしょうか?

0045nobodyさん2009/04/06(月) 21:10:53ID:???
使ったことないけどblob2image ⇔ image2blob
0046nobodyさん2009/04/06(月) 22:55:44ID:Lg8L8FIC
PHPで以下のような書き方って出来ますか?
$testの値が5なら「てst」と出力するのですができますでしょうか?

<?php
if ($test == 5):
?>


てst

<?php
endif;
?>
0047nobodyさん2009/04/06(月) 22:57:50ID:tQxsy1N7
すいませんarray()はキーワードらしいんですけど特別な意味があるのでしょうか?
0048nobodyさん2009/04/06(月) 23:01:27ID:???
>>46
そのまんまできるけど試せばいいのに
>>47
文字通り配列を作成
詳しくはphp.net/array
0049nobodyさん2009/04/06(月) 23:03:12ID:???
お忙しいところ恐縮です
ttp://jp2.php.net/manual/ja/class.exception.phpにある内容がよくわかりません
例外というのはどういう時に使うのでしょうか?
0050492009/04/06(月) 23:03:53ID:9ymstZFd
すいませんID出し忘れました
0051nobodyさん2009/04/06(月) 23:06:56ID:5SFFX38L
php.iniでタイムゾーンを設定しなかった場合、
何を基準で時刻が表示されるのですか?
0052472009/04/06(月) 23:07:37ID:???
>>48
ありがとうございます
0053nobodyさん2009/04/06(月) 23:11:19ID:???
>>49
簡単な例が出てる。
http://jp2.php.net/manual/ja/language.exceptions.php
0054nobodyさん2009/04/06(月) 23:12:17ID:???
>>51
http://jp2.php.net/manual/ja/datetime.configuration.php#ini.date.timezone
http://jp2.php.net/manual/ja/function.date-default-timezone-get.php
0055nobodyさん2009/04/06(月) 23:18:12ID:qkQqSy3E
phpの環境構築の質問です
windowsです
php5.2.9を一個インストールしました
apacheを3つ(1.3と2.0と2.2)インストールしました
apacheを三つ起動してphpを動かすことはできますでしょうか?
0056nobodyさん2009/04/06(月) 23:19:35ID:???
ポートをきちんと分ければいけるんちゃう?
0057nobodyさん2009/04/06(月) 23:19:38ID:???
>>55
できるよ
0058nobodyさん2009/04/06(月) 23:23:18ID:tZqDzIhT
以下のようなコメントはダメって言われたのですが不具合はありませんでした
なぜだめなのでしょうか?
<?php
/*
echo 'テストです'; /* このコメントが問題を生じます */
*/
?>
0059nobodyさん2009/04/06(月) 23:26:28ID:???
>>58
ダメだからじゃないの?
http://jp.php.net/manual/ja/language.basic-syntax.comments.php
0060nobodyさん2009/04/06(月) 23:26:33ID:LvefCDF1
$fopen = fopen("textfile.txt","w")って書き方を知りました
$fopenにはリソースが入るらしいんですが、このことについてご教示お願いします
fopenで読み込んだファイルはメモリに読み込まれるということでしょうか?
ということはfcloseをしたら情報はメモリから消えるということになるのでしょうか?
0061nobodyさん2009/04/06(月) 23:28:35ID:???
これも仕様上正しい書き方になるわけだもんな
/*
/*
echo 'テストです';
*/
0062nobodyさん2009/04/06(月) 23:33:04ID:???
時々、正規表現中の */ とかぶってパニクる。
0063nobodyさん2009/04/06(月) 23:34:24ID:???
>>60
http://jp.php.net/manual/ja/function.fopen.php
0064nobodyさん2009/04/06(月) 23:35:05ID:???
$foo = 5 + "10 Little Piggies";
公式でこれ$fooが整数らしいんですけど何故ですか?
公式が間違えてるのでしょうか?
0065nobodyさん2009/04/06(月) 23:36:08ID:???
>>64
>>1
0066nobodyさん2009/04/06(月) 23:40:16ID:???
ビット演算子の勉強をしています
$strに含まれる文字列を1bit右にずらしたいのですが思う通りの結果になりません
どなたかご教示お願い致します

$str ="abcde";
echo $str ^ 1;
0067662009/04/06(月) 23:41:03ID:PTpMIEWr
ID出し忘れました
申し訳ございません
0068nobodyさん2009/04/06(月) 23:43:47ID:???
>>66
なんでXOR取ってるのか分からん
http://jp2.php.net/manual/ja/language.operators.bitwise.php
0069nobodyさん2009/04/06(月) 23:48:01ID:???
俺がマジレスしてやると
echo $str >> 1;
0070nobodyさん2009/04/07(火) 00:07:56ID:???
ここまでの質問は全部おれの自演
お陰で勢いが80超えた^^
0071nobodyさん2009/04/07(火) 03:19:34ID:???
なぜにIDを出して質問をしなくちゃいけないのか
甚だ疑問。

>>1は死ね
0072nobodyさん2009/04/07(火) 06:14:03ID:???
出さなくていいほうがあるんだからそっちいけカス
0073nobodyさん2009/04/07(火) 14:08:44ID:4/ZzdyJu
PHPで作成したWEBシステムで、独自に吐かせているログをlogrotateしたいのですが、
PHPはapacheのモジュールとして動いているので、現在のapacheで運用されている

# cat /etc/logrotate.d/httpd
------------------------------
/var/log/httpd/*log {
missingok
notifempty
sharedscripts
postrotate
/bin/kill -HUP `cat /var/run/httpd.pid 2>/dev/null` 2> /dev/null || true
endscript
}
------------------------------
と同じものは書かなくても良いのですよね?
以下のもので大丈夫でしょうか?

# vi /etc/logrotate.d/mysytem
------------------------------
/var/log/mysystem/systemlog {
missingok
}
------------------------------
0074nobodyさん2009/04/07(火) 14:47:40ID:???
>>73
ディストリは何使ってるんだ?それによって答えが若星変わる
0075nobodyさん2009/04/07(火) 16:31:53ID:4/ZzdyJu
>>74
ありがとうございます。
Red Hat Enterprise Linux ES release 3 です。
0076nobodyさん2009/04/07(火) 16:35:07ID:???
>>75
ああ、RHか
企業参入後のそれは使ったことないから控えとくわ
0077nobodyさん2009/04/07(火) 16:38:40ID:???
>>73
ディストリとか関係ないからw
/etc/logrotate.d/httpd にログファイルのパスを追加するだけ。
0078nobodyさん2009/04/07(火) 17:30:41ID:4/ZzdyJu
>>77
あ、そっか。。 ありがとうございます!

# vi /etc/logrotate.d/httpd
------------------------------
/var/log/httpd/*log /var/log/mysystem/systemlog {
missingok
notifempty
sharedscripts
postrotate
/bin/kill -HUP `cat /var/run/httpd.pid 2>/dev/null` 2> /dev/null || true
endscript
}
------------------------------
0079nobodyさん2009/04/07(火) 17:35:09ID:???
>>77
覚えたてで使いたかったんだろ。
0080nobodyさん2009/04/07(火) 19:57:49ID:???
質問初心者クンはここを見て質問の仕方を覚えてこい
ttp://www.gekiura.com/guest/m0005418.html
0081nobodyさん2009/04/07(火) 20:12:36ID:???
>>80
注意
0082nobodyさん2009/04/07(火) 21:57:01ID:nY33/bGj
csvファイルAからcsvファイルBへ特定の行だけを移動したいと思ってます。
チェックボックスで選ばれた行をAから削除しBへ書き込むプログラムを
色々考えたのですがさっぱり検討もつかず1週間経ちます
どうかヒントだけでもいいので教えてください。
0083nobodyさん2009/04/07(火) 22:09:02ID:???
ファイルを2つ同時に開いて出したり入れたり
0084nobodyさん2009/04/07(火) 22:11:16ID:???
csvのカラム構造はどうなってるのさ
一意なキーがあればあとは簡単だと思うが
0085nobodyさん2009/04/07(火) 22:58:39ID:???
ttp://wikiwiki.jp/web/

一応、一問一答でwikiにためてたりスレのテンプレを記録するために借りてみた
一緒に更新お願いします
PHP用のwikiってことでお願いします
ページ下部のアフィは勝手についたもので俺には1円も入らないから気にしないで下され
0086nobodyさん2009/04/07(火) 22:59:22ID:???
いや自分が更新しろや
0087nobodyさん2009/04/07(火) 23:03:12ID:???
wikiのタイトルを「PHPの事はここ見やがれ」したら受けそう
0088nobodyさん2009/04/07(火) 23:15:48ID:???
下らねぇ質問はここ見やがれ
でいいじゃん
0089nobodyさん2009/04/07(火) 23:17:18ID:???
編集の仕方がわからない><
0090nobodyさん2009/04/08(水) 03:33:41ID:0hFuJwMz
別の板できいたらスレチだったのでここで質問します
変数の中に入ってる文字列をファイル名として
変数.txtとか変数.jpgのようにあらわすにはどうすればいいのでしょうか?
0091nobodyさん2009/04/08(水) 03:51:35ID:???
>>90
$x = "hogehoge";
echo "$x.txt";
http://jp.php.net/manual/ja/language.types.string.php#language.types.string.parsing
0092nobodyさん2009/04/08(水) 08:18:56ID:???
$x.'.txt';
どっちがいいんだかいつも迷う
0093nobodyさん2009/04/08(水) 11:11:24ID:r8DEvZ6R
whileでもforでもどちらでも繰り返しの表現ができるときは、
特にこだわりなくforでやってても問題ないでしょうか?
○○な理由で、できる限りこっちでやったほうがいいみたいなことないですかね。
よろしくお願いします。
0094nobodyさん2009/04/08(水) 11:13:40ID:???
$x.'.txt';
だと、エディタが変数の色代えてくれるけど、
設定で"の中の$も代えてくれるかもしれん
0095nobodyさん2009/04/08(水) 12:55:37ID:cjj/9xGO
すみませんが、質問です。

リクエストパラメータが正の整数であるかどうかをチェックしたいのですが、
どういう方法が良いでしょうか?

is_int()は使えませんが、is_numeric()も良くなくて、結局 preg_match()を
使うしかないのでしょうか?

(参考)PHPと16人の仲間達 : is_numeric は・・・なぁ
http://php16.exblog.jp/4720976/
0096nobodyさん2009/04/08(水) 13:12:20ID:???
頻出すぎて萎える
0097nobodyさん2009/04/08(水) 13:16:37ID:???
>>95
試してないけどこれは?
$s = チェックする値
if($s<0)echo "負の数です";
0098nobodyさん2009/04/08(水) 13:16:47ID:???
pregだと数値か文字列か判別できんだろ
0099952009/04/08(水) 13:45:02ID:cjj/9xGO
ちょっと質問を補足します。
あるリクエストパラメータが、通常の正の整数(の文字列化)になっているか
を判別したいのです。
リクエストパラメータは文字列ですから、is_int()は使えません。
is_numeric()はある程度使えますが、"+0123.45e6"もtrueになってしまいます。

・trueとなってほしい値。
"1", "0001", "132", etc...

・falseとなってほしい値
"0", "-1", "1.0", "0xFF", "+0123.45e6", etc...

これにかなうのは、 preg_match('/^\d*[1-9]$/', $param)
しか思いつかないのですが、他に何か良い方法はないでしょうか?
0100nobodyさん2009/04/08(水) 13:48:37ID:???
>>99
それ、間違ってるだろ。とりあえず。
preg_match('/^[1-9]+\d*$/D', $param)
0101nobodyさん2009/04/08(水) 13:49:06ID:???
"+1"はどうなのよ"+0"はどうなのよ
0102952009/04/08(水) 13:56:41ID:cjj/9xGO
>>100
それは >>99の "0001" が trueになりませんし、
"0"がtrueになってしまいます。

>>101
どちらもfalseです。trueになるのは"正の整数"と>>95,>>99で書いています。
あと、符号を含むものはfalseのつもりでした。

しかしこの流れだと、正規表現以外なさそうですね。
0103nobodyさん2009/04/08(水) 14:01:54ID:???
ちょっとPHPカテゴリを辿ってみたけど

http://php16.exblog.jp/6067489/
【結果】
strpos = 1.4秒
preg_match = 7.0秒
・・・あー・・・結構違いますね・・・。
寝ます。

http://php16.exblog.jp/4940100/
上記の結果は・・・
"1234" の出力になります。("1212"じゃなく)
つまり、static宣言した変数の値は
メソッド呼び出し元のインスタンスが変わっても保持されています。
なんでこうなってんだろう?

とか言ってるレベルの奴のblogだぞ?
0104952009/04/08(水) 14:13:53ID:cjj/9xGO
>>103
引用したページが私の質問の意図をうまく説明するものだったので貼りました。
他のページが全部間違いでも問題ないと思います。
0105nobodyさん2009/04/08(水) 14:15:08ID:???
is_numeric って

is_numeric("0xFF"); // 16進表記



is_numeric("+0123.45e6"); // 指数表記

をTRUEとしてしまうようです。(マニュアルに書いてありますけどね)


マニュアルに書いてあるんじゃん
0106nobodyさん2009/04/08(水) 14:16:58ID:???
>>95
それ10の倍数だとfalseだけど。
ctype_digit($param) && $param > 0
でいいんじゃないの。
0107952009/04/08(水) 14:24:10ID:???
>>106
ご指摘のバグは今さっき気づいたところです。

> ctype_digit($param) && $param > 0
まさに望みどおりのものです。ありがとうございます。
0108952009/04/08(水) 14:24:40ID:cjj/9xGO
あ、下げてしまった。>>107は私です。では失礼します。
0109nobodyさん2009/04/08(水) 14:44:33ID:???
何か俺が作るサイトはデザインが自分でも悪い。
何かみてくれをよくするテクニックを纏めたオススメの書籍はありますか?
0110nobodyさん2009/04/08(水) 15:09:24ID:???
認識してるのにデザインが悪いと思うってことはなにかと比べてるからだと思うが
その比べてるデザインの優れたと思うものを真似してみればどうだろう
好みなんて人それぞれだし万人が好むと思って押し付けても違ったりするから
0111nobodyさん2009/04/08(水) 15:23:02ID:???
デザインは板違いじゃないか?
0112nobodyさん2009/04/08(水) 15:31:12ID:???
>>109
いくらみてくれはよかっても、アフィをみてほしいのか記事(内容)をみてほしいのか
意味不明なサイトじゃなきゃ問題ない。
もちろん見た目は大事だけど内容と見易さ(使いやすさ)だよ。

0113nobodyさん2009/04/08(水) 16:59:27ID:???
>>109
このスレではPHPの文法以外のことを聞いても、あんまり答えは返ってこない。
悪いこと言わないから、この辺↓に移動して聞きなおしたほうがいいと思うよ。

Webサイト制作初心者用質問スレ Part 208
http://pc11.2ch.net/test/read.cgi/hp/1238669869/
0114nobodyさん2009/04/08(水) 17:31:21ID:???
>>107
バグて。
仕様だろ。
0115nobodyさん2009/04/08(水) 17:39:59ID:9xKyaeca
SQLとファイル、どっちをデータ保存に使うか?ってよく出る話題ですが、
たとえばチャットシステムのように
数秒単位でデータの挿入、更新、削除が行われる場合ってどっちがいいんでしょうか。
どっちでも扱いやすいほうで、構いませんか?
0116nobodyさん2009/04/08(水) 17:42:13ID:???
パフォーマンス計ってみればいいじゃん
0117nobodyさん2009/04/08(水) 18:13:22ID:???
好きな方でいいよ
0118nobodyさん2009/04/08(水) 18:20:30ID:???
>>110 >>112
サンクス
先ずは、見易さ第一に作り次に自分が綺麗と思うサイトのHPのデザイン
を真似する事から始めます。
※真似されたHPの管理人は怒るかもしれませんが。
0119nobodyさん2009/04/08(水) 20:24:35ID:???
チャットでパフォーマンスが気になるなら共有メモリとかにした方がいいんじゃないの。
使ったことないけど。
■ このスレッドは過去ログ倉庫に格納されています