- 1 名前:nobodyさん mailto:sage [2007/08/11(土) 10:08:03 ID:???]
- まず読め→【PHP マニュアル】www.php.net/manual/ja/
PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。 過去スレ、関連スレ、FAQなどは>>2-10辺り ◆前スレ 【PHP】下らねぇ質問はここに書き込みやがれ 51 pc11.2ch.net/test/read.cgi/php/1185521566/ ◆質問する時の注意 ・ 自分のIDを表示させること。(メール欄に何も記述しないこと。空白も入力しちゃダメ) ・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を明記すること。 ・ 己の行った操作、変更などを詳しく明記すること。 ・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。 ・ 質問者として、態度をわきまえること。 ・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。 ◆質問後の注意 ・偽者防止に必ずIDを表示させること。(メール欄に何も記述しない) ・2回目以降は最初に質問した際のレス番号を名前欄に入れること。 ・解決しなくても回答をもらった場合はお礼を言うこと。 (荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。) ◆回答者への注意 ・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。 【その他諸注意】 ・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ ・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
- 426 名前:nobodyさん mailto:sage [2007/08/16(木) 18:22:54 ID:???]
- 仕事関係に関する話はPHPと関係ありませんので他スレへどうぞ
- 427 名前:nobodyさん mailto:sage [2007/08/16(木) 18:52:00 ID:???]
- 恥ずかしい自己紹介までする荒らしワロス
- 428 名前:nobodyさん mailto:sage [2007/08/16(木) 19:58:13 ID:???]
- >>418
>契約次第でしょ。たかがスクリプトなんだから、改変禁止の契約ってあり得ない。 いままで2行で矛盾してるやつって見たことあるけど、1行で矛盾してるの初めて見た。
- 429 名前:nobodyさん mailto:sage [2007/08/16(木) 21:19:29 ID:???]
- まんこっこ
- 430 名前:nobodyさん mailto:sage [2007/08/16(木) 21:51:07 ID:???]
- 此処は糞の掃き溜めだわ
- 431 名前:nobodyさん mailto:sage [2007/08/16(木) 21:56:46 ID:???]
- なんで荒れてもうたん
- 432 名前:nobodyさん mailto:sage [2007/08/16(木) 22:00:34 ID:???]
- 観光地の岩に落書きしてブログで自慢する程度の低モラルを
自慢するID:7iV7mGjEさんのせい。
- 433 名前:nobodyさん mailto:sage [2007/08/16(木) 22:14:48 ID:???]
- 少なからず他人を見下したような書き込みをしないと気がすまない>>430みたいな奴は
このスレで最も底辺だと思う。俺含めて。
- 434 名前:nobodyさん mailto:sage [2007/08/16(木) 22:19:33 ID:???]
- sage
- 435 名前:nobodyさん mailto:sage [2007/08/16(木) 22:58:47 ID:???]
- >>433
なんだと。俺も含めろ
- 436 名前:nobodyさん [2007/08/16(木) 23:30:03 ID:NWhUuXjV]
- 質問です。
以下の様に、URLベースでgetimagesizeから画像の縦横幅を取りたいのですが タイムアウト時間を設定してタイムアウトだった場合にエラーを出したいのですが タイムアウトの判断はどのように行えば良いでしょうか? fsockopenとかだったら分かるのですが… $url = "example.com/hoge.jpg"; getimagesize($url, $return);
- 437 名前:nobodyさん mailto:sage [2007/08/16(木) 23:32:16 ID:???]
- set_time_limit
- 438 名前:nobodyさん [2007/08/16(木) 23:45:06 ID:NWhUuXjV]
- set_time_limitだとその後のエラー処理をかませられなくないですか?
- 439 名前:nobodyさん mailto:sage [2007/08/16(木) 23:51:04 ID:???]
- gatimagesizeの返り値で判断すればいいんじゃないの
- 440 名前:nobodyさん mailto:sage [2007/08/16(木) 23:54:23 ID:???]
- それだとタイムアウト設定の意味がなくなりますよね…
- 441 名前:nobodyさん mailto:sage [2007/08/16(木) 23:56:18 ID:???]
- default_socket_timeoutで設定すればいいんじゃないの
- 442 名前:nobodyさん [2007/08/17(金) 00:03:20 ID:c43Kkl2A]
- >>441の方法でいけました。
一応コードも載せておきますね。 ini_set("default_socket_timeout", 5); if(!@getimagesize("example.com/hoge.jpg")){ throw new Exception("timeout"); } ありがとうございました。
- 443 名前:442 [2007/08/17(金) 00:34:12 ID:c43Kkl2A]
- 自己レスです。
結局↑の場合、タイムアウトと画像ファイルじゃなかった場合の区別がつかないので以下の様に修正しました。 ini_set("default_socket_timeout", 3); ini_set("track_errors", true); $result = @getimagesize("google.co.jp"); if(strpos($php_errormsg, "getimagesize") === 0){ echo "タイムアウト"; }else if($result === false){ echo "画像ファイルではありません。"; }
- 444 名前:nobodyさん mailto:sage [2007/08/17(金) 11:50:57 ID:???]
- ifで「もし$txtが数字で始まっていれば」ってどうすればいい?
- 445 名前:nobodyさん mailto:sage [2007/08/17(金) 11:53:36 ID:???]
- if (substr($txt, 0, 1) == 0) {}
if (substr($txt, 0, 1) == 1) {} if (substr($txt, 0, 1) == 2) {} if (substr($txt, 0, 1) == 3) {} if (substr($txt, 0, 1) == 4) {} if (substr($txt, 0, 1) == 5) {} if (substr($txt, 0, 1) == 6) {} if (substr($txt, 0, 1) == 7) {} if (substr($txt, 0, 1) == 8) {} if (substr($txt, 0, 1) == 9) {}
- 446 名前:nobodyさん mailto:sage [2007/08/17(金) 11:54:34 ID:???]
- if (preg_match("/[0-9]/",$txt)){}
- 447 名前:nobodyさん mailto:sage [2007/08/17(金) 11:57:04 ID:???]
- あまやかさないために>>446は動かないようにかいたから
自分でなおせなかったら>>445でシコシコやってろクズ
- 448 名前:nobodyさん mailto:sage [2007/08/17(金) 12:02:13 ID:???]
- >>445
>>446 ありがとうございますやってみます
- 449 名前:nobodyさん mailto:sage [2007/08/17(金) 12:49:32 ID:???]
- >>445
これはひどい
- 450 名前:nobodyさん mailto:sage [2007/08/17(金) 13:10:29 ID:???]
- >>448
偉そうに言ってる>>447だが、>>445も文法的に 間違うようなバカなので(本人は、間違ってないと思ってる)、 そいつの言うこと聞いたらダメだよ。
- 451 名前:nobodyさん mailto:sage [2007/08/17(金) 13:24:47 ID:???]
- >>445
せめて === で比較しろよ
- 452 名前:nobodyさん mailto:sage [2007/08/17(金) 13:30:39 ID:???]
- ===使ったからと言ってなんともならない
- 453 名前:nobodyさん mailto:sage [2007/08/17(金) 13:44:42 ID:???]
- >>445
なにやってんのこいつ
- 454 名前:nobodyさん mailto:sage [2007/08/17(金) 13:51:35 ID:???]
- >>>444
if(ctype_digit(mb_strcut($txt,0,1)){}
- 455 名前:nobodyさん mailto:sage [2007/08/17(金) 14:31:28 ID:???]
- >>444
if(is_numeric($txt[0])){}
- 456 名前:nobodyさん mailto:sage [2007/08/17(金) 14:46:15 ID:???]
- >>453
ああ、ごめん知識がたりなかったよ。 君のすばらしいコードで解決してくれないか?
- 457 名前:nobodyさん mailto:sage [2007/08/17(金) 14:53:07 ID:???]
- if(is_numeric(substr($txt, 0, 1))) {}
- 458 名前:nobodyさん mailto:sage [2007/08/17(金) 14:53:13 ID:???]
- >>456
>>455で解決済み
- 459 名前:nobodyさん mailto:sage [2007/08/17(金) 14:57:55 ID:???]
- しかし>>445はひでーなw
- 460 名前:nobodyさん mailto:sage [2007/08/17(金) 15:08:00 ID:???]
- 455が奇麗だよね
- 461 名前:nobodyさん mailto:sage [2007/08/17(金) 15:12:53 ID:???]
- >>445は素人プログラマー
プロは↓こう if (substr($txt, 0, 1) == 0) {} else if (substr($txt, 0, 1) == 1) {} else if (substr($txt, 0, 1) == 2) {} else if (substr($txt, 0, 1) == 3) {} else if (substr($txt, 0, 1) == 4) {} else if (substr($txt, 0, 1) == 5) {} else if (substr($txt, 0, 1) == 6) {} else if (substr($txt, 0, 1) == 7) {} else if (substr($txt, 0, 1) == 8) {} else if (substr($txt, 0, 1) == 9) {}
- 462 名前:nobodyさん mailto:sage [2007/08/17(金) 15:18:55 ID:???]
- >>461
- 463 名前:nobodyさん mailto:sage [2007/08/17(金) 15:32:34 ID:???]
- substr($txt, 0, 1) == 0
だと普通の文字にもマッチするよ 数字と文字列との比較は数字以外の文字は0として扱われる substr($txt, 0, 1) == "0" ならおk
- 464 名前:nobodyさん mailto:sage [2007/08/17(金) 16:22:51 ID:???]
- それ以前に何度もsubstrかましてんなよ。
- 465 名前:nobodyさん mailto:sage [2007/08/17(金) 17:32:33 ID:???]
- ほんとPHPユーザーは言語が適当なせいでいろいろと適当っすね
数字の比較なら型の比較も行う===演算子使ってください
- 466 名前:nobodyさん mailto:sage [2007/08/17(金) 17:47:51 ID:???]
- 質問は下らなくないが回答が下らないw
- 467 名前:nobodyさん mailto:sage [2007/08/17(金) 18:01:33 ID:???]
- is_numericとctype_digitって何が違うのさ
- 468 名前:nobodyさん mailto:sage [2007/08/17(金) 18:11:24 ID:???]
- >>467
var_dump(ctype_digit("-1")); var_dump(is_numeric("-1")); ↓ bool(false) bool(true)
- 469 名前:nobodyさん mailto:sage [2007/08/17(金) 18:19:28 ID:???]
- >>467
is_numericは 変数が数字または数値文字列であるかを調べる(少数点/符号等OK) ctype_digitは 与えられた文字列のすべての文字が 数字であるかどうかを調べる(少数点/符号等NG) ついでに is_intは 与えられた変数が整数かどうかを調べる マニュアルくらい読め
- 470 名前:nobodyさん mailto:sage [2007/08/17(金) 18:56:27 ID:???]
- >>467は>>466の期待に応えるべく下らない質問をしたんだと予想
- 471 名前:nobodyさん mailto:sage [2007/08/17(金) 19:23:08 ID:???]
- 【PHP】下らねぇ質問はここに書き込みやがれ 52
【PHP】下らねぇ回答はここに書き込みやがれ 52 後者のほうが似合ってるな
- 472 名前:nobodyさん mailto:sage [2007/08/17(金) 20:08:05 ID:???]
- 昨日のキチガイといい今日といいレベル低杉w
- 473 名前:nobodyさん mailto:sage [2007/08/17(金) 20:13:02 ID:???]
- はいはい、そうやって上に立った気になっていないと自我を保てない程現実が貧困なんでちゅね^^
- 474 名前:nobodyさん mailto:sage [2007/08/17(金) 20:25:13 ID:???]
- >>473
>>473
- 475 名前:nobodyさん mailto:sage [2007/08/17(金) 20:33:47 ID:???]
- ファイルポインタを一行下す方法はないかな?
fgetsとかで動かすしかないか
- 476 名前:質問 [2007/08/17(金) 20:51:59 ID:enhPQ2hv]
- apacheインストールの後、PHPをインストールしましたが、
ルートディレクトリが変更できません c:\WINDOWSにあるphp.iniを doc_root = "c:/home/htdocs" と変えたのにも関わらず、ルートディレクトリ(localhost/)は C:\Program Files\Apache Group\Apache\htdocs のアパッチのままです この他に変えるべきところはあるでしょうか? 親切な人お願いです OS:XP Pro SP 2 apache_1.3.27-win32-x86-no_src.msi php-4.3.0-Win32.zip
- 477 名前:nobodyさん mailto:sage [2007/08/17(金) 21:01:24 ID:???]
- lol
- 478 名前:nobodyさん mailto:sage [2007/08/17(金) 21:02:49 ID:???]
- >>475
fgetsが一番簡単だろうね。 >>476 httpd.confで設定。
- 479 名前:nobodyさん mailto:sage [2007/08/17(金) 21:05:20 ID:???]
- なんでPHPとルートディレクトリが関係あると思ったの?
- 480 名前:nobodyさん mailto:sage [2007/08/17(金) 21:05:47 ID:???]
- ありがとうございます。やっぱりfgetsですか。
- 481 名前:476 [2007/08/17(金) 21:15:07 ID:enhPQ2hv]
- >>478 さん
すばやい回答 感謝です! \Apache Group\Apache\conf\httpd.conf の DocumentRoot = ... <Directory ... > を変更したら、できましたっ☆ どうもです(^▽^)/ >>479 さん 言われて見ればそうですねぇ php.iniにdoc_rootってあったんで、 それにこだわり過ぎてました
- 482 名前:nobodyさん [2007/08/17(金) 23:29:43 ID:iaQQurNy]
- テキストフィールドで入力された文字列を
PHP側でバイト数チェックしたいんですがどのような方法がありますか?
- 483 名前:nobodyさん mailto:sage [2007/08/17(金) 23:36:38 ID:???]
- strlen
- 484 名前:nobodyさん mailto:sage [2007/08/18(土) 01:58:19 ID:???]
- mb_ strlen
- 485 名前:nobodyさん mailto:sage [2007/08/18(土) 02:25:21 ID:???]
- >>484
それ、バイト数と違う
- 486 名前:nobodyさん [2007/08/18(土) 02:50:39 ID:kiwa8Qsa]
- >>485
元の質問者がテキストフィールドって言っているんだから、それでいいだろw
- 487 名前:nobodyさん mailto:sage [2007/08/18(土) 03:02:17 ID:???]
- 元の質問者がバイト数って言ってんのはどうなるんだw
- 488 名前:nobodyさん mailto:sage [2007/08/18(土) 03:56:25 ID:???]
- 1文字あたりのバイト数を積算すりゃいいじゃん
- 489 名前:487 mailto:sage [2007/08/18(土) 07:08:47 ID:???]
- >>488
そういうことか、勘違いしてた。ゴメン。
- 490 名前:nobodyさん mailto:sage [2007/08/18(土) 08:51:51 ID:???]
- 配列の中のとある項目で配列をまとめたいのですが、どのようにするのが効率がいいでしょうか?
掲示板のDBからの結果が以下配列に入っています。 user_id ユーザID, posts 投稿数 $array = array( 0 => array('user_id' =>1, 'posts' => 2), 1 => array('user_id' =>2, 'posts' => 10), ...) 投稿数の多い順に並べ、投稿数が同じ場合は、そこにユーザIDを並べていく こう書くと早い、わかりやすい、DBで取得時にこうしろ等よろしくお願いします。
- 491 名前:nobodyさん mailto:sage [2007/08/18(土) 09:04:24 ID:???]
- ソートくらいSQLの段階でやればいいじゃん
あと何でテンプレくらい読まないのかね
- 492 名前:nobodyさん mailto:sage [2007/08/18(土) 09:13:11 ID:???]
- >>491
いや、だからそのSQLのやり方を聞いているのですが。
- 493 名前:490 [2007/08/18(土) 09:21:32 ID:abpL+5co]
- ))492は、偽者です。
テンプレみなくてすみません SQLのpostsによるソートは終わっているものとして下さい
- 494 名前:490 [2007/08/18(土) 09:37:27 ID:kiwa8Qsa]
- >>492->>493の方は、私ではありません。
>>491 レスありがとうございます。 すみません。テンプレは読んだのですが、SQLで実行するかarray関数で並べ替えるかで考えています。 どちらの方が正しい、こちらの方がパフォーマンスがいいでしょうか? よろしくお願いします。
- 495 名前:nobodyさん mailto:sage [2007/08/18(土) 10:19:11 ID:???]
- >>494
普通はSQLでやる。その方が数倍効率がいい。 それをPHPでやるのはよほど特殊な事情がある場合くらい。
- 496 名前:nobodyさん mailto:sage [2007/08/18(土) 11:01:11 ID:???]
- SQL使わないならファイルベースで突っ込んどくだけで十分
- 497 名前:490 [2007/08/18(土) 11:55:13 ID:kiwa8Qsa]
- >>495>>496
レスありがとうございます。 件数が多いのでパフォーマンスを心配していたのですが、 SQLのorder byでやってみます。 ありがとうございました。
- 498 名前:nobodyさん mailto:sage [2007/08/18(土) 11:58:38 ID:???]
- おいおいw
- 499 名前:nobodyさん mailto:sage [2007/08/18(土) 13:36:58 ID:???]
- わざと自演しているやつがいるな
- 500 名前:nobodyさん mailto:sage [2007/08/18(土) 13:44:03 ID:???]
- そりゃ自演する時はわざとするだろ
- 501 名前:nobodyさん mailto:sage [2007/08/18(土) 13:56:22 ID:???]
- ID出さないとこうなる、ということで
- 502 名前:nobodyさん mailto:sage [2007/08/18(土) 20:31:46 ID:???]
- 掲示板とかにある
一定以上のレスだと [1][2]とかページリンクどうやって作ればいいんですか?
- 503 名前:nobodyさん mailto:sage [2007/08/18(土) 20:32:54 ID:???]
- ま た お ま え か
そんくらい自分で考えろボケ
- 504 名前:nobodyさん mailto:sage [2007/08/18(土) 21:03:23 ID:???]
- PEAR::Pager使えばいいじゃない
- 505 名前:nobodyさん mailto:sage [2007/08/18(土) 21:20:38 ID:???]
- そんくらい自分で考えるかソース読むくらいしないとね
つーか思いつくだろそんくらい
- 506 名前:nobodyさん mailto:sage [2007/08/18(土) 21:44:24 ID:???]
- さすがに、調べればすぐ分かる事や誰でも思いつく事を聞かれてはね・・。
>>1すら見てなさそうだし。
- 507 名前:nobodyさん mailto:sage [2007/08/18(土) 21:48:05 ID:???]
- クダスレなんだから、回答する気がないならレスするなよw
>>502 [1][2]のリンクだと、<a href="/1.html">[1]</a><a href="/2.html">[2]</a>とすれば可能です。 あとは、hrefのリンクの部分は必要に応じて変更して下さい。
- 508 名前:nobodyさん mailto:sage [2007/08/18(土) 22:36:01 ID:???]
- エーッ!!
- 509 名前:nobodyさん mailto:sage [2007/08/18(土) 22:45:58 ID:???]
- >>507
秀逸すぐる
- 510 名前:nobodyさん mailto:sage [2007/08/18(土) 23:26:57 ID:???]
- >>507
さては本職だな
- 511 名前:nobodyさん mailto:sage [2007/08/18(土) 23:48:15 ID:???]
- ひさしぶりに下スレでなごんだ(´ω`)
- 512 名前:nobodyさん mailto:sage [2007/08/18(土) 23:54:12 ID:???]
- >>507
そのとおりだよな。サーバの負荷を考えれば別プログラムで静的HTMLを吐き出すのが定石。
- 513 名前:nobodyさん mailto:sage [2007/08/18(土) 23:54:15 ID:???]
- なごまねえよキメエな殴りたくなる顔だわwwwwwwwww
- 514 名前:nobodyさん mailto:sage [2007/08/18(土) 23:56:55 ID:???]
- エスパー乙
- 515 名前:nobodyさん mailto:sage [2007/08/18(土) 23:57:19 ID:???]
- >>512
それはある意味正論だな けど動的に吐き出せないんなら意味ねー
- 516 名前:nobodyさん mailto:sage [2007/08/19(日) 00:19:06 ID:???]
- (´ω`)<僕はログが増える度に手書きでリンク修正している
- 517 名前:nobodyさん mailto:sage [2007/08/19(日) 00:26:01 ID:???]
- すっごい廃人。
誰でも一度は考えたことがあるだろうけど。
- 518 名前:nobodyさん mailto:sage [2007/08/19(日) 00:39:17 ID:???]
- >>516
スゲー笑った
- 519 名前:nobodyさん mailto:sage [2007/08/19(日) 01:03:49 ID:???]
- 昔は小規模なチャットサイトとかそうだったよな。
「24時間以内にアカウントを発行します」とかいって リーマンが家に帰ってから手動でアカウント作って送ってたんだろうな
- 520 名前:nobodyさん mailto:sage [2007/08/19(日) 01:08:51 ID:???]
- 今でもそれが普通だろ
お前どんなブルジョワだよ
- 521 名前:nobodyさん mailto:sage [2007/08/19(日) 01:40:34 ID:???]
- いやいや普通、自動でやるだろw
- 522 名前:nobodyさん [2007/08/19(日) 03:33:17 ID:3pgnVbVO]
- Division by zero
というエラーがログに残ります。 0を割っているということが原因なのはわかってるんですが、 大部分のソースを if( $num != 0 ){ 割る処理; }else{ 割らない処理; } として修正していくのが結構つらいです。 何か簡単な修正方法ないでしょうか。
- 523 名前:nobodyさん mailto:sage [2007/08/19(日) 03:58:26 ID:???]
- 0にしない
- 524 名前:nobodyさん mailto:sage [2007/08/19(日) 10:42:57 ID:???]
- 除算じゃなくて乗算でやればいいんじゃないの?
ja.wikipedia.org/wiki/%E3%82%BC%E3%83%AD%E9%99%A4%E7%AE%97 数学嫌いの俺には何がなんだかさっぱりだ
- 525 名前:nobodyさん mailto:sage [2007/08/19(日) 11:02:52 ID:???]
- 乗算ならできるというのは驚異的で革新的な理論だ
- 526 名前:nobodyさん mailto:sage [2007/08/19(日) 11:19:00 ID:???]
- 頭使えば除算でできることは工夫すれば乗算でもできるだろ。
答えはもちろん同一にはならないが。
|

|