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

    私的良スレ書庫

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

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

    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
    801 : nobodyさん - 2014/04/05(土) 15:17:51.64 ID:???.net (+57,+29,-6)
    UNCで出来て、ドライブレターで出来ないのって、
    それくらいしか考えられないんだけど
    803 : nobodyさん - 2014/04/05(土) 15:29:10.67 ID:???.net (+48,+30,+0)
    805 : nobodyさん - 2014/04/05(土) 15:55:58.85 ID:???.net (-1,-29,-41)
    > PHP で使用されるデフォルトのラッパーは Filesystem で、 これはローカルファイルシステムを表します

    見るからに仕様だな
    806 : nobodyさん - 2014/04/05(土) 16:35:27.71 ID:???.net (-1,-29,-53)
    つかファイルテーブルがローカルにないしそのネットワークを越えるプロトコルも分からんし。
    ENOENTはイミフだけど、叩いてるAPIがそう返してるんだろう。
    807 : nobodyさん - 2014/04/05(土) 22:37:06.56 ID:???.net (-2,-30,-104)
    $ins = new test_ins;

    echo <<< EOF
    {test::m_aaa()}
    {$ins->m_ins()}
    EOF;

    ヒアドキュメントでスタティックはそのまま出力される
    この挙動の違いどうにかなりませんかねー
    808 : nobodyさん - 2014/04/05(土) 22:51:07.78 ID:???.net (+51,+23,-1)
    自己解決しました。先頭に$がないとダメみたいですね
    809 : nobodyさん - 2014/04/06(日) 17:10:33.74 ID:nQEJIdXz.net (+19,+29,-1)
    ブラックでも借りられる
    http://44.xmbs.jp/cashingnavi0
    811 : nobodyさん - 2014/04/07(月) 18:54:36.27 ID:???.net (+29,-18,-27)
    やり方はいくらでもあるだろうし、どこまでの要件か知らんけど
    countなりしてその2個だけ調べるとか…?

    調べるキー増やすこと考えたらarray_searchのがいいんじゃない?
    812 : nobodyさん - 2014/04/07(月) 19:00:24.63 ID:???.net (+57,+29,-14)
    少なくとも、不正なリンクからのアクセスを拒否という理由に対しては意味がありませんね。
    813 : nobodyさん - 2014/04/07(月) 19:02:15.47 ID:???.net (+56,+28,-15)
    わざわざ不要なパラメータをつける意味がない
    814 : nobodyさん - 2014/04/07(月) 19:06:18.03 ID:???.net (+57,+29,-9)
    「不正なリンク」てのがどのレベルの話による
    815 : nobodyさん - 2014/04/07(月) 19:08:53.28 ID:???.net (-2,-30,-38)
    動作としては
    array_diff_keyかarray_diffで比較すればいいけど

    意味はないな
    816 : nobodyさん - 2014/04/07(月) 19:26:34.90 ID:???.net (+62,-30,-288)
    >>810
    $strict_keys = array('abc', 'def');
    if (count(array_diff(array_keys($_GET), $strict_keys)) != 0 &&
      count(array_diff($strict_keys, array_keys($_GET))) == 0)) {
        exit('param error.');
    }

    しかし、なんかめんどくさいからこっちのほうがいいかも。

    $strict_keys = array('abc', 'def');
    $keys = array_keys($_GET);
    if (arsort($keys) != arsort($strict_keys)) {
      exit('param error.');
    }

    意味はあるかというと、あまりない。register globalsがonであるような環境も今はない(と思いたい)し。
    817 : nobodyさん - 2014/04/07(月) 19:50:29.30 ID:???.net (+31,-29,-16)
    >>816
    なぜに2回array_diffするん?
    818 : 810 - 2014/04/07(月) 19:55:00.01 ID:oeJdbJD1.net (+33,+29,-118)
    >>811-816
    ご回答ありがとうございます。とても参考になりました。
    $_GETの入力値チェックをしていたところ、不正なキーを持つリンクでも
    通ってしまったので気になって質問しました。

    http://exaple.com/abc=2014&;def=4&xyz=1111111

    こういう場合には、弾いた方がセキュリティ的にいいんじゃないかなと。
    register globalsがonでないので大丈夫だとして、
    キーにJavaScript等の不正値が仕込まれたらどうなの?と少し不安に感じたのです。
    入門書でも、値の検証はしても、キーの検証をしているものはなかったので
    疑問に思いました。

    でも、この検証にあまり意味がない(必要性がない)ということみたいで良かったです。
    >>816 のコードも参考にさせて頂きます。
    ありがとうございました。
    819 : nobodyさん - 2014/04/07(月) 20:03:23.35 ID:???.net (+66,+29,-25)
    >>817
    ええと「過不足」がないことを調べるためにはそうしないとだめ。
    array_diffは、引いた残りを出すことしかしない。
    820 : nobodyさん - 2014/04/07(月) 20:09:45.97 ID:???.net (+70,+29,-74)
    って、>>816の最初の例は間違えてた。
    どちらも != 0にする。

    ちなみに、集合が過不足なく一致しているかの検証という意味ではSQLでも同様のめんどくささ(二回引き算)があって。
    幸いPHPは配列の比較ができるので、後者の(しぶしぶソートをした上で)集合そのものを比較するコードを書いた。
    821 : nobodyさん - 2014/04/07(月) 20:13:52.25 ID:???.net (+13,-29,-21)
    >>819
    不足の話は書いてないけど
    そういうことなら演算子が間違ってるだけか

    過不足までやるなら
    array_intersectで、元のarrayと一致するかで実装しそうだ
    822 : nobodyさん - 2014/04/07(月) 20:14:31.65 ID:???.net (+44,+21,+0)
    すまん、修正入ってた
    823 : nobodyさん - 2014/04/07(月) 20:22:20.03 ID:???.net (+4,-30,-111)
    >>821
    array_intersectを使う場合でも結局ソートは必要で、こんな感じになる。
    arsort(array_intersect($strict_keys, array_keys($_GET))) == arsort($strict_keys)

    で、そうするくらいなら、intersectなんてやらずにこれで十分ということに。
    arsort(array_keys($_GET)) == arsort($strict_keys)

    集合比較はもっと楽であってほしいよね。
    824 : nobodyさん - 2014/04/07(月) 20:56:05.96 ID:???.net (+11,-30,-60)
    array_intersect($strict_keys, array_keys($_GET)) == $strict_keys
    キーと値が維持されるから大丈夫だと思う

    >>816は&&を変えないとダメだね
    825 : nobodyさん - 2014/04/07(月) 21:09:14.05 ID:???.net (+50,+27,-10)
    ヘッポコデスマヌ。
    826 : nobodyさん - 2014/04/08(火) 21:16:44.40 ID:???.net (+49,+28,-7)
    このスレって馬鹿しかいないの?
    827 : nobodyさん - 2014/04/08(火) 21:46:58.86 ID:???.net (+50,+29,+0)
    俺もお前もみんな馬鹿
    829 : nobodyさん - 2014/04/09(水) 13:13:31.56 ID:???.net (+40,-30,-139)
    フレームワークとかMVCとかあまり理解できてないけどそういうのを真似してる
    静的部分をtemplate.htmlとかで保存して、動的な部分だけ[::dynamic_contents::]みたいにして、
    $output = str_replace('[::dynamic_contents::]', $dynamic_contents, $source);
    $output = str_replace('[::page_title::]', $page_title, $output);
    $output = str_replace('[::hoge::]', $hoge, $output);
    みたいに置換で埋め込んでいく感じ
    830 : nobodyさん - 2014/04/09(水) 13:16:00.10 ID:???.net (+52,+29,-21)
    >>828
    それはやってるうちに覚えていくから今は好きなようにやりなさい
    最終的にはテンプレート使った感じになるだろう
    831 : nobodyさん - 2014/04/09(水) 13:17:36.38 ID:???.net (+62,+29,-4)
    >>829
    え?無駄に重くないそれ??
    832 : nobodyさん - 2014/04/09(水) 13:18:29.92 ID:Q3D5DjV1.net (-20,+29,-32)
    テンプレートか、その発想はなかったです
    ちょっと調べて実装してみる、どうもありがとう
    833 : nobodyさん - 2014/04/09(水) 13:21:38.17 ID:???.net (-2,-30,-49)
    ヒアドキュメントで書かれたテンプレートファイルに、分けたPHPファイルで作った変数を{$hoge}で埋め込んで行けば良くね?
    834 : nobodyさん - 2014/04/09(水) 15:34:40.84 ID:???.net (+33,-29,-44)
    >>829
    なんか一周しちゃった感じだね。
    HTMLをHTMLとして完全に独立させたかったのかなぁとは思うけど、そこまでする価値はないかな。

    ということで、<?= $dynamic_contents ?>どぞ。
    835 : nobodyさん - 2014/04/09(水) 20:08:39.87 ID:???.net (+88,+21,-31)
    >>834
    その記法はサーバによっては動かないからダメだろ
    836 : nobodyさん - 2014/04/09(水) 20:23:09.80 ID:???.net (+43,+15,-19)
    記法にいちいち突っ込まないでechoに脳内変換しろよ
    837 : nobodyさん - 2014/04/09(水) 20:31:02.50 ID:???.net (+28,+5,+0)
    もうすぐ、5.3終わるしな
    838 : nobodyさん - 2014/04/10(木) 01:04:55.50 ID:???.net (+63,+20,-23)
    リポジトリから開発サーバや本番にデプロイするのってどういう手段使ってますか?
    840 : nobodyさん - 2014/04/10(木) 02:21:03.33 ID:???.net (+4,-23,-1)
    tarコマンドはどういうことですか?
    841 : nobodyさん - 2014/04/10(木) 02:39:42.51 ID:???.net (+27,-3,-10)
    >>838
    スレ違い
    842 : nobodyさん - 2014/04/10(木) 02:57:39.70 ID:???.net (-3,-29,+0)
    cap
    vagrant
    どっちか
    843 : nobodyさん - 2014/04/10(木) 03:38:48.13 ID:???.net (+98,+29,-51)
    >>835
    サーバによっては動かないからダメ?そんな制限課してコード書くなんてドMだね。
    ちなみに普段どの環境をターゲットとしてコードを書いてるの?
    844 : nobodyさん - 2014/04/10(木) 09:10:58.62 ID:???.net (-1,-29,-23)
    short_open_tag はデフォルトがころころ変わるからだろw
    最新は常にOnだが
    845 : nobodyさん - 2014/04/10(木) 09:17:48.16 ID:???.net (+11,-16,-4)
    5.4以上は常に利用可能になるんだから
    使える前提でいいよ
    846 : nobodyさん - 2014/04/10(木) 10:17:05.35 ID:???.net (+61,+30,+0)
    847 : nobodyさん - 2014/04/10(木) 10:39:30.65 ID:???.net (+0,-28,-5)
    最近はショートタグonでもoffでも使えるで
    848 : nobodyさん - 2014/04/10(木) 10:43:07.55 ID:???.net (-1,-29,-14)
    今のは on/off は <? ~ ?> の作用だけで
    <?= ~ ?> は常に使えるね。
    849 : nobodyさん - 2014/04/10(木) 10:46:34.39 ID:???.net (-1,-29,-10)
    最近
    <?=$piyo?>が使えたから、通常部で
    <?
    ?>
    で書いたら動かなくてハマったことあったわ
    850 : nobodyさん - 2014/04/10(木) 16:15:52.18 ID:???.net (+3,-30,-151)
    5.6リリースに合わせてFAQも直したいな
    というか削除してしまってもいいんじゃないかな?

    > 2. このスレに書き込むときに自分のサイト名を晒したくない
    >  →http://example.com/が例文などのために予約されている。hogehoge.comは使っちゃダメ。

    こんなのとか

    > 3. ブラウザに何も表示されないんだけど・・・
    >  → Apacheの設定を見直せ。ファイルの拡張子は何にしてて、その拡張子でPHPを呼ぶようになっているか?

    display_errors に触れないとか Apache 限定とか

    > 13. $a1, $a2, $a3 ... のような変数名をうまく扱いたい
    > 17. CSVやTSVのファイルをスマートに扱いたい

    質問の意味が曖昧すぎるとか色々
    まぁ時代にそぐわない&みょうちくりんな項目多すぎです
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / php スレッド一覧へ
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

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


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