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

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

php覧 / PC版 /
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter

801 = :

UNCで出来て、ドライブレターで出来ないのって、
それくらいしか考えられないんだけど

803 = :

http://www.php.net/manual/ja/wrappers.file.php

808 = :

自己解決しました。先頭に$がないとダメみたいですね

809 :

ブラックでも借りられる
http://44.xmbs.jp/cashingnavi0

811 = :

やり方はいくらでもあるだろうし、どこまでの要件か知らんけど
countなりしてその2個だけ調べるとか…?

調べるキー増やすこと考えたらarray_searchのがいいんじゃない?

812 = :

少なくとも、不正なリンクからのアクセスを拒否という理由に対しては意味がありませんね。

813 = :

わざわざ不要なパラメータをつける意味がない

814 = :

「不正なリンク」てのがどのレベルの話による

816 = :

>>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 = :

>>816
なぜに2回array_diffするん?

818 :

>>811-816
ご回答ありがとうございます。とても参考になりました。
$_GETの入力値チェックをしていたところ、不正なキーを持つリンクでも
通ってしまったので気になって質問しました。

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

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

でも、この検証にあまり意味がない(必要性がない)ということみたいで良かったです。
>>816 のコードも参考にさせて頂きます。
ありがとうございました。

819 = :

>>817
ええと「過不足」がないことを調べるためにはそうしないとだめ。
array_diffは、引いた残りを出すことしかしない。

820 = :

って、>>816の最初の例は間違えてた。
どちらも != 0にする。

ちなみに、集合が過不足なく一致しているかの検証という意味ではSQLでも同様のめんどくささ(二回引き算)があって。
幸いPHPは配列の比較ができるので、後者の(しぶしぶソートをした上で)集合そのものを比較するコードを書いた。

821 = :

>>819
不足の話は書いてないけど
そういうことなら演算子が間違ってるだけか

過不足までやるなら
array_intersectで、元のarrayと一致するかで実装しそうだ

822 = :

すまん、修正入ってた

823 = :

>>821
array_intersectを使う場合でも結局ソートは必要で、こんな感じになる。
arsort(array_intersect($strict_keys, array_keys($_GET))) == arsort($strict_keys)

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

集合比較はもっと楽であってほしいよね。

824 = :

array_intersect($strict_keys, array_keys($_GET)) == $strict_keys
キーと値が維持されるから大丈夫だと思う

>>816は&&を変えないとダメだね

825 = :

ヘッポコデスマヌ。

826 = :

このスレって馬鹿しかいないの?

827 = :

俺もお前もみんな馬鹿

829 = :

フレームワークとか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 = :

>>828
それはやってるうちに覚えていくから今は好きなようにやりなさい
最終的にはテンプレート使った感じになるだろう

831 = :

>>829
え?無駄に重くないそれ??

834 = :

>>829
なんか一周しちゃった感じだね。
HTMLをHTMLとして完全に独立させたかったのかなぁとは思うけど、そこまでする価値はないかな。

ということで、<?= $dynamic_contents ?>どぞ。

835 = :

>>834
その記法はサーバによっては動かないからダメだろ

836 = :

記法にいちいち突っ込まないでechoに脳内変換しろよ

837 = :

もうすぐ、5.3終わるしな

838 = :

リポジトリから開発サーバや本番にデプロイするのってどういう手段使ってますか?

840 = :

tarコマンドはどういうことですか?

841 = :

>>838
スレ違い

843 = :

>>835
サーバによっては動かないからダメ?そんな制限課してコード書くなんてドMだね。
ちなみに普段どの環境をターゲットとしてコードを書いてるの?

845 = :

5.4以上は常に利用可能になるんだから
使える前提でいいよ

846 = :

>>843

850 = :

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一覧へ
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

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


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