のくす牧場
コンテンツ
牧場内検索
カウンタ
総計:126,331,514人
昨日:no data人
今日:
最近の注目
人気の最安値情報

    私的良スレ書庫

    不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitter
    ログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。

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

    php スレッド一覧へ / php とは? / 携帯版 / dat(gz)で取得 / トップメニュー
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
    レスフィルター : (試験中)
    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter
    1 : nobodyさん - 2008/12/08(月) 01:27:39 ID:??? (-6,-29,+0)
    質問者はまず>>1を良く読むこと(必須!)
    過去スレ、関連スレ、FAQなどは>>2-10辺り
    次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。

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

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

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

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

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

    【その他諸注意】
    ・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
    3 : nobodyさん - 2008/12/08(月) 01:29:18 ID:??? (+3,-30,-90)
    関連リンク
    ■本家マニュアル   http://www.php.net/manual/ja/
    ■日本PHPユーザ会 http://www.php.gr.jp/
    ■PEARマニュアル  http://pear.php.net/manual/ja/
    ■メーリングリスト   http://ns1.php.gr.jp/mailman/listinfo/
    ■ZFマニュアル    http://framework.zend.com/manual/ja/

    (以下英語)
    ■Smarty       http://smarty.php.net/
    ■Zend本家      http://www.zend.com/
    ■Zend Framework  http://framework.zend.com/
    ■php | architect   http://www.phparch.com/
    ■Smartyマニュアル http://smarty.php.net/manual/en/
    ■PECL本家(英語) http://pecl.php.net/
    4 : nobodyさん - 2008/12/08(月) 01:30:01 ID:??? (+3,-30,+0)
    【簡易FAQ】
    1.文字コードは何を使えばいいの?
     →1.UTF-8 2.EUC-JP のどちらか。迷うようなやつはShift_JISは使っちゃダメ。
    2. このスレに書き込むときに自分のサイト名を晒したくない
     →http://example.com/が例文などのために予約されている。hogehoge.comは使っちゃダメ。
    3. ブラウザに何も表示されないんだけど・・・
     → Apacheの設定を見直せ。ファイルの拡張子は何にしてて、その拡張子でPHPを呼ぶようになっているか?
    4. 記号の意味がわからないけどググりようがない
     → 「@」 エラー表示を抑制、「->」 オブジェクトのメンバにアクセス、「::」 静的なメソッド呼び出し、
      「==」は暗黙の型変換をしてゆるい比較、「===」は型情報も含めた厳密な比較
    5. echo "$arr['hoge']['fuga']"; と書いたらエラーになった
     → {おっぱい括弧}でくくって"{$arr['hoge']['fuga']}"にする
    6. 一定時間ごとに自動的に何かしたいんだけど
     → cronかタスクスケジューラを使え。
    7.extractって危険なの?
     →変数上書き&初期化忘れなどで危険。楽だからという理由だけで安易に使わない。
    8. include/requireに「~.php?a=b&c=d」のようなパラメータをつけたい
     → URL呼び出しなら可能だけど、普通のファイル呼び出しではできません
    9.include/requireでURLを指定しても何も起きない
     → .phpの拡張子のファイルをURLで呼び出すと、1度PHPプログラムとして実行された結果になる。
    5 : nobodyさん - 2008/12/08(月) 01:30:32 ID:??? (+3,-30,+0)
    10. そもそもインストールの時点でうまくいかない
     → 確認すべきはPHPのconfigureの引数、php.iniの内容と置き場所、
      Webサーバの設定(Apacheならhttpd.conf)、起動&再起動あたり
    11. SQLの質問はどこで?
     → データベース板に誘導されるのが嫌ならPHPにうまく関連させて質問する
    12. 文字列のなかに、英字のみとか数字のみとか記号が入っちゃいやんとかはどうしたらいいの?
     → ctype_~()が手軽。複雑なパターンはpreg_~()あたりで正規表現を使う。
    13. $a1, $a2, $a3 ... のような変数名をうまく扱いたい
     → 可変変数で実現できるけど、むしろ配列を使って$a[1], $a[2], $a[3]等とするのがベター
    14. echoとprintってどう違うの?
     → よく議論される話題であるが基本的に両者とも同じ。 以下ちょっとした議論。
      http://www.faqts.com/knowledge_base/view.phtml/aid/1/fid/40
    15. クッキーの情報をユーザから隠したい
     → セッション使え。ただしクッキーとセッションは仕組みが違うから同じように扱うな
    16. strip_tags()で削除しないタグを複数指定したい
     → strip_tags($html, '<a><p><font>'); // htmlspecialchars()も検討すべし
    17. CSVやTSVのファイルをスマートに扱いたい
     → まずはfgetcsv()。ただし日本語を含むと正常に動作しない場合があるので注意だ。
    18. 値渡しと参照渡し(「&」を使う)のパフォーマンスの違い
     → C言語じゃないので、パフォーマンス目的で使いわけたらダメ。参照渡しにすると逆に遅くなったりする
      参照渡しは引数に戻り値を設定したり引数を関数内で変更するなど、正しい目的に使うこと
    19. ファイル入出力関数(fopen等)でリモートファイル(http://~とか)を扱う際の限界
     → fsockopen()でソケット通信 or PEARのHTTP系 or CURLで解決
      必要ならHTTPをはじめとする各種プロトコル(どんなデータを送受信するか)はRFCなどで調べる
    20. PHPからPOSTリクエストしたい
     →19.を参照
    21. 画像処理一般 or GDの限界
     → ImageMagick(PECLのやつ or シェルから実行)
    22. 画像・音・動画はファイルで保存?DBに保存?
     → 好きにしてください
    6 : nobodyさん - 2008/12/08(月) 04:44:19 ID:??? (-1,-29,-6)
    いまnl2br という関数を知ったんだが、なにこの
    便利すぎる機能。
    7 : nobodyさん - 2008/12/08(月) 08:30:56 ID:E0jjD+uU (-20,+29,-31)
    PHPの連想配列は、
    添え字は、数字とキーと、
    混在できるんだ?

    perlでは無理だった機能だよね。
    8 : nobodyさん - 2008/12/08(月) 09:00:16 ID:??? (+47,+29,+0)
    もうお腹一杯
    11 : nobodyさん - 2008/12/08(月) 11:14:25 ID:??? (-1,-29,-31)
    まず取得した文字列の文字エンコードを調べる作業に入るんだ
    12 : nobodyさん - 2008/12/08(月) 11:18:06 ID:??? (-1,-29,-31)
    No more Multibyte Character !!
    13 : nobodyさん - 2008/12/08(月) 11:46:01 ID:??? (+12,-30,-124)
    前スレの方へ
    >996 名前: nobodyさん [sage] 投稿日: 2008/12/07(日) 16:08:22 ID:???
    >配列関数のところで、配列を育成するとして一覧されており、
    >ヘルプのファイル名もfunction.array.phpとなっている。
    >関数でなければ、そのような分類にはならないでしょう。
    >というのは状況証拠。
    echoもありますよ

    >998 名前: nobodyさん [sage] 投稿日: 2008/12/07(日) 16:12:07 ID:???
    >そもそもhoge()の形で呼び出してる時点で関数
    同様にechoもprintもあるので残念ながら短絡すぎ
    14 : nobodyさん - 2008/12/08(月) 11:53:17 ID:??? (+88,+29,-11)
    何この粘着ぶり
    だからechoやprintは関数ではないってちゃんと書いてるじゃん。
    arrayはそこまで言い切ってないでしょ。
    往生際悪過ぎ
    15 : nobodyさん - 2008/12/08(月) 11:55:28 ID:??? (+57,+29,-15)
    いちいち前スレから話題ひっぱってくんなよ
    どうしてもその話題したいなら揚げ足じゃなくて
    Array()が関数じゃないという証明にしてくれ
    16 : nobodyさん - 2008/12/08(月) 12:01:16 ID:??? (+57,+29,-14)
    今後、「array()が関数」の話題を続けたい人は隔離スレ立ててくれ。
    まぁ、俺が結論だしてもいいけどww
    17 : nobodyさん - 2008/12/08(月) 12:01:19 ID:??? (+55,+29,-18)
    冬休みが近づいてくるとキチガイが表れるよな
    18 : nobodyさん - 2008/12/08(月) 12:04:45 ID:??? (+165,+24,-6)
    >>14-17
    何言ってんの?
    998が間違いだって言ってるの
    20 : nobodyさん - 2008/12/08(月) 12:11:58 ID:??? (+148,+29,-51)
    >>18
    粘着*2 乙
    問題の正誤は問題にしてない。ここはクダスレ。
    arrayの議論スレじゃないんだよ。
    前スレで退廃した話題を引っ張ってくるなと。
    21 : nobodyさん - 2008/12/08(月) 12:12:51 ID:??? (+113,+29,-4)
    >>18
    日本語わかんねーのかよ

    お前がキチガイだって言ってんだよ
    22 : nobodyさん - 2008/12/08(月) 12:40:41 ID:??? (+122,+29,-33)
    >>18
    貴様の正論は公式で開発してる人達に通じるのかメール送ってみればいいじゃん
    ここで吠えてんじゃねえぞ負け犬
    23 : nobodyさん - 2008/12/08(月) 12:41:15 ID:??? (+40,+23,+0)
    >>19
    文が長すぎ
    25 : nobodyさん - 2008/12/08(月) 13:13:20 ID:??? (+119,+30,-60)
    >>20
    なんで前スレの話題を続けちゃいけないの?
    言論封殺?
    引っ張ってこられると都合が悪いから?
    >>21
    なぜに?理由を示してください
    >>22
    俺別に何とも戦ってないよ。
    ただ括弧つけてコールしたからといって必ず関数とは限らないよって示しただけだよ。
    26 : nobodyさん - 2008/12/08(月) 13:14:36 ID:??? (+57,+29,-6)
    うるせーこれ以上やるなら専用スレ立てるから覚悟しろ!
    27 : nobodyさん - 2008/12/08(月) 13:16:41 ID:??? (+40,+29,-31)
    問答無用だ!立ててやったからこっからでてけ!

    さまざまな言語仕様について熱く語る闘技場
    http://pc11.2ch.net/test/read.cgi/php/1228709756/
    28 : nobodyさん - 2008/12/08(月) 13:18:54 ID:??? (+52,+29,+0)
    相手しなければいいだけだよ
    29 : nobodyさん - 2008/12/08(月) 13:43:26 ID:??? (+156,+29,-52)
    >>25
    サービスだ、1回だけ教えてやる
    > >>20
    > なんで前スレの話題を続けちゃいけないの?

    質問でも回答でもないからだ。
    お前らがやってるのはドキュメントレベルとシステムレベルを混同してる不毛な議論
    30 : nobodyさん - 2008/12/08(月) 13:47:35 ID:CarXFmyd (+31,-30,-140)
    【OS名】windows xp
    【PHPのバージョン】php5.26
    【連携ソフトウェア】sqlite
    【質問内容】
    市販の解説本のサンプルソースを勉強中です
    if (isset($key)) {
    if (strlen($key) > 0) {
    $sql .= " WHERE uid = $key";
    }}

    多少記述を省略していますが
    上記の条件は $key がセットされているか?
    $key が1バイト以上か?
    ですよね?

    最初のif文 if (isset($key)) {
    は要らないのでは?と思ったのですが
    必要なのでしょうか?



    31 : nobodyさん - 2008/12/08(月) 13:50:43 ID:??? (-11,-29,-25)
    >>30
    未定義の変数を関数に放りこみたいか?
    非推奨だからNOTICEが発生する
    32 : nobodyさん - 2008/12/08(月) 13:55:23 ID:??? (+43,+29,-26)
    >>30
    本来は必要ないはず
    必ず変数は初期化するよう心がける
    初期化しない変数は使わない
    これ基本
    33 : nobodyさん - 2008/12/08(月) 13:57:23 ID:??? (+53,+29,-3)
    しかし、酷いサンプルだね。そんな本捨てちゃえ
    34 : nobodyさん - 2008/12/08(月) 14:30:32 ID:??? (+107,+29,-32)
    >>29
    回答が間違ってることの指摘だよ
    もしくは回答に関連した議論の続き
    自分が嫌だから他人に書き込むなって強制するのは子供だよ
    35 : nobodyさん - 2008/12/08(月) 14:39:41 ID:??? (+79,+29,-26)
    >>34
    お前以外の全員が、お前の粘着を嫌がってるのに気付かないのか。
    かわいそうに・・・唯一の味方の>>29まで失うのか。
    この上は自作自演でもして盛り上がってくれよwww
    36 : nobodyさん - 2008/12/08(月) 14:41:27 ID:??? (+51,+28,+0)
    いい加減スルーしろよ
    37 : nobodyさん - 2008/12/08(月) 14:45:09 ID:??? (+57,+29,-2)
    えっと、誘導先のスレに行ってくれるかな
    38 : 30です - 2008/12/08(月) 14:53:53 ID:CarXFmyd (-13,+29,-34)
    どうもありがとうございます

    >>30
    いまいち理解できませんが、意味は分かりました

    >>33
    勉強するのに、いいサンプルソース(DB連携付)
    があればぜひ教えてください

    PHPによるWebアプリケーションスーパーサンプル 第2版
    http://d.hatena.ne.jp/asin/479733245X
    のサンプルを勉強しているのですが


    39 : 30です - 2008/12/08(月) 14:55:44 ID:CarXFmyd (-26,+22,-13)
    > >>30
    > いまいち理解できませんが、意味は分かりました
    ×30
    >>32 の間違いでした
    40 : nobodyさん - 2008/12/08(月) 15:08:20 ID:??? (+75,+28,-95)
    33だけど、コーディング覚えるのに本ってどうだろうな。
    いまどきならPHP5ベースのフレームワークのソース呼んだ方がいい。
    が、質問の趣旨に答えとくと、一応これをお勧めしとく[初めてのPHP & MySQL]

    あのソースがなんで酷いか。
    $keyがセットされてるかどうかもわからない状況で
    エスケープもクォートもせずにWHERE句に文字列を突っ込んでる点。
    41 : nobodyさん - 2008/12/08(月) 15:20:45 ID:??? (+60,+30,+0)
    42 : 30です - 2008/12/08(月) 17:00:55 ID:CarXFmyd (-28,+4,-53)
    >>40
    どうもです
    サンプルにはちゃんとエスケープ処理してあります
    今回は、引用を短く書きました。失礼しました

    自分はprepare メソッドに書き換えています
    43 : nobodyさん - 2008/12/08(月) 17:17:09 ID:??? (+0,-30,-62)
    >>42
    そういうことね。了解。
    エスケープって、こんなかんじ?
    $key = is_string($key) ? "'" . mysql_escape_string($key) . "'" : "''";
    その文脈で来てて、issetとかおかしいし、strlenもいらねぇよな。やっぱり変。
    44 : nobodyさん - 2008/12/08(月) 17:19:47 ID:??? (+21,-1,+0)
    あぁ、ごめ、SQLiteだね。
    47 : nobodyさん - 2008/12/08(月) 18:51:53 ID:??? (-17,-30,-124)
    >>45
    やるなら
    if(isset($_POST["key"])){
    $key = (int)trim($_POST["key"]);
    }else{
    $key = 0;
    }
    $sql="SELECT * FROM usr WHERE uid = ".$key;
    でいいんじゃないの?
    48 : nobodyさん - 2008/12/08(月) 18:52:35 ID:??? (+24,-29,-2)
    arrayは関数です
    49 : nobodyさん - 2008/12/08(月) 18:58:54 ID:??? (+58,+30,+0)
    50 : nobodyさん - 2008/12/08(月) 19:03:43 ID:??? (-4,-29,-22)
    >>45,47
    まさか、uidって整数なの?strlenで比較してるのに?
    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / php スレッド一覧へ
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

    類似してるかもしれないスレッド


    トップメニューへ / →のくす牧場書庫について