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

    私的良スレ書庫

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

    元スレ【PHP】フレームワークについて語るスレ13【総合】

    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
    301 : nobodyさん - 2009/08/16(日) 00:33:58 ID:??? (+39,+11,-6)
    Javaとか日本語の変数名をつけられるしな。
    302 : nobodyさん - 2009/08/16(日) 02:15:06 ID:??? (+70,+29,-3)
    >>299
    組み方の問題。
    デストラクタ内でエラー出すとそーなったりするね。
    303 : nobodyさん - 2009/08/16(日) 07:25:25 ID:??? (+62,+27,+1)
    >>287
    そうだ
    304 : nobodyさん - 2009/08/16(日) 12:22:34 ID:??? (+57,+29,-15)
    最近は2重ネストですら潰したくなって困る。
    3重くらいまでは潰すメリットのが大きいが、この辺まで来ると趣味だな。
    305 : nobodyさん - 2009/08/16(日) 14:07:49 ID:??? (+57,+29,-29)
    型は、ぶっちゃけ指定したくなるときあるな。
    32bit機で64bit整数使いたいときがあったりもする。
    俺の脳が古いんだろうけどな・・・。
    306 : nobodyさん - 2009/08/16(日) 15:08:15 ID:??? (+42,-26,-39)
    > 32bit機で64bit整数使いたいときがあったりもする。

    32bit機で64bit整数使えない言語なんてあるの?
    307 : nobodyさん - 2009/08/16(日) 18:02:22 ID:??? (+57,+29,-17)
    存在するかもしれないけど、現実にそんなもの使う機会はないな
    308 : nobodyさん - 2009/08/16(日) 18:41:28 ID:??? (+62,+29,-14)
    >>306
    phpだと、実数になっちゃうじゃん。
    309 : nobodyさん - 2009/08/16(日) 18:48:37 ID:??? (+8,-30,-53)
    >>306
    php -r '$a=pow(2,62);$a++;$b=$a&1;print "$a $b\n";'

    32bit機だと 4.6116860184274E+18 0
    64bit機だと 4611686018427387905 1

    型指定したくなる気持ちも分かる。
    310 : nobodyさん - 2009/08/16(日) 23:12:58 ID:??? (+78,+16,-18)
    gmpで任意精度整数を扱えるじゃない
    311 : nobodyさん - 2009/08/16(日) 23:24:45 ID:??? (+3,-24,-25)
    扱う数字が32bitの範囲を超えそうだ!
    というだけの理由で64bit環境を採用したうちの会社。
    312 : nobodyさん - 2009/08/17(月) 01:02:40 ID:??? (+48,+25,-4)
    正しい判断じゃね?
    313 : nobodyさん - 2009/08/17(月) 07:42:31 ID:??? (+68,+29,-2)
    >>310
    それ、型指定じゃん。
    だから、型指定したくなるって言ってるんだよ。
    314 : nobodyさん - 2009/08/17(月) 14:19:28 ID:??? (+91,+29,-10)
    必要ならすればいいがな
    PHPでどんなときも型指定が必須だし、したいってのもお門違いだと思うけど。
    315 : nobodyさん - 2009/08/17(月) 15:40:52 ID:??? (+57,+29,-8)
    型指定したい時なんてそんなに頻繁にないし
    したい時にチェックして例外投げりゃいいじゃん
    316 : nobodyさん - 2009/08/17(月) 16:08:29 ID:??? (+70,+29,-8)
    >>314,315
    型指定と型チェックは違うだろ。
    まぁ、もういいわ。スレ汚しすまそ。
    317 : nobodyさん - 2009/08/17(月) 16:23:24 ID:??? (+91,+29,-8)
    チェックで代用できるって言ってるんじゃん
    頭固い子だな
    318 : nobodyさん - 2009/08/17(月) 16:43:31 ID:??? (+57,+29,-31)
    基本やりたいことが実現するならやりたいようにやればいいけど。
    人に強要しだすと面倒くさい。
    メリットを強調してくれるならまだしも、趣味を押しつけられても困る。
    319 : nobodyさん - 2009/08/17(月) 16:46:24 ID:??? (+52,+29,+0)
    誰が強要してるねん
    320 : nobodyさん - 2009/08/17(月) 18:37:19 ID:??? (+103,+29,-23)
    >>317
    型チェックで型指定は代用できないだろ。ちょっとは脳使え。
    誰もおまえらにphpで型宣言しろとも言ってないよ。
    おまえらには一生メリット無いだろうし。
    321 : nobodyさん - 2009/08/17(月) 18:41:42 ID:??? (+71,+29,-5)
    >>320
    へ?君の言ってる型指定ってどんなのを言ってるの?
    322 : nobodyさん - 2009/08/17(月) 20:38:50 ID:??? (+57,+29,-35)
    リファレンスなりちゃんと用意してりゃ型指定とかしなくてもチェックだけで十分代用できると思うけどなぁ
    323 : nobodyさん - 2009/08/17(月) 23:06:54 ID:??? (+3,-30,-136)
    <?php
    $num = 'one';
    switch($num){
     case 0:
     case 'zero':
      echo 'zero';
      break;
     case 1:
     case 'one':
      echo '1';
      break;
     case 2:
     case 'two':
      echo '2';
      break;
    }
    この「バグ」のおかげでenum代わりの定数に0が使えないし、定数値の中身を毎回毎回確認する羽目になる。unk。
    324 : nobodyさん - 2009/08/18(火) 01:10:39 ID:??? (-1,-29,-44)
    数値文字列混在させたswitch-caseのcase 0:の不具合はたしかに変な動作だけど
    そもそもcase文に数値と文字列を混ぜて使うあたり頭悪いと思う
    325 : nobodyさん - 2009/08/18(火) 01:57:57 ID:??? (+3,-30,-263)
    <?php
    define('C_ZERO',0); define('C_ONE',1); define('C_TWO',2);
    function f($n) {
     echo $n . ' is: ';
     switch($n){
      case (string)C_ZERO: echo '0'; break;
      case 'zero': echo 'zero'; break;
      case (string)C_ONE: echo '1'; break;
      case 'one': echo 'one'; break;
      default: echo 'default';
     }
     echo ' / '; var_dump($n);
    }

    f(0); f("0"); f("zero");
    f(1); f("1"); f("one");
    f(2); f("2"); f("two");
    ---
    キャストができないなら "".CONST とかでもいい。多少気持ち悪いけど何より手っ取り早い
    326 : nobodyさん - 2009/08/18(火) 02:20:01 ID:??? (+57,+29,-19)
    2を消し忘れてた
    もう一年以上まともにPHP触ってないけど、多分これでいけるはず
    327 : nobodyさん - 2009/08/18(火) 11:45:35 ID:??? (+2,-25,-55)
    文字列と数値を同じ演算子で比較する、しかも、0始まりの文字列を適当に変換する、無理があったな。
    328 : nobodyさん - 2009/08/18(火) 18:55:46 ID:??? (+3,-30,-40)
    function hoge(string $str, int $int)
    {
    }

    って書けるのと、function内で型チェックして例外投げるのが同じとか言ってる人は頭弱すぎだろ。
    強制じゃなく、必要な箇所にだけ型指定出来ればPHPDocも出力出来るし、便利だと思うんだけどね。
    329 : nobodyさん - 2009/08/18(火) 20:22:43 ID:??? (+45,+27,+0)
    いい加減にしろ
    330 : nobodyさん - 2009/08/18(火) 20:44:11 ID:??? (+94,+29,-3)
    おのれでクラス作ってタイプヒンティング書けばいいだろ
    331 : nobodyさん - 2009/08/18(火) 21:19:02 ID:??? (+50,+22,-16)
    つーかPHP使わなきゃいいんじゃね?
    332 : nobodyさん - 2009/08/18(火) 21:22:22 ID:??? (+71,+30,-70)
    そもそもの発端が、>>279
    型指定の中途半端さに対する指摘だったのに、
    なぜ型指定自体の論争になるのか理解出来ない。

    出来るに越した事は無いし、PHP以外を使えとかどんだけ盲目信者なんだと。
    >>330とか本気でそう思ってるならプログラマ辞めた方がいい。
    333 : nobodyさん - 2009/08/18(火) 21:35:48 ID:??? (+128,+29,-32)
    いやだってPHPは文字列も整数も同じように扱えたほうが便利だよねってとこから
    言語思想がスタートしてるんだから自分がPHPを選んだ上でそれを言うのは非常にナンセンスかと
    334 : nobodyさん - 2009/08/18(火) 21:44:21 ID:??? (-1,-29,-13)
    入力も出力も文字列だしな
    いちいち内部で変換するとかC/C++で嫌なほど苦労した
    335 : nobodyさん - 2009/08/18(火) 21:48:46 ID:??? (+48,+20,-10)
    自分でextention書けばいいだけ
    PHPの型指定に文句言うのは小学生までだよねキャハハキモーイ
    336 : nobodyさん - 2009/08/18(火) 21:59:41 ID:??? (-1,-29,-9)
    checkdate()は$_POSTデータ直で渡したら転けた。
    微妙にintオンリーとかあるよね。
    337 : nobodyさん - 2009/08/18(火) 22:44:33 ID:??? (+79,+29,-45)
    >>333
    PHP5でOOPよりに思想が変化したじゃん。
    引数として型指定出来るようになって、
    それはPHPの良さを保ちつつ、必要な箇所は堅牢に出来るってイメージだったんだけど、
    stringとかintを型指定出来ない理由が不明なんだよね。


    気持ち悪いとは思わないのかなと。
    338 : nobodyさん - 2009/08/18(火) 22:48:16 ID:??? (+75,+29,-22)
    >>333
    >PHPは文字列も整数も同じように扱えたほうが便利だよねってとこから
    >言語思想がスタートしてる

    初耳だ
    ソースは?
    339 : nobodyさん - 2009/08/18(火) 23:15:59 ID:??? (+86,+28,-3)
    クラスタイプヒンティングだけで十分だけど
    340 : nobodyさん - 2009/08/18(火) 23:21:21 ID:??? (+62,+27,-2)
    >>339

    初耳だ
    ソースは?
    341 : nobodyさん - 2009/08/18(火) 23:41:38 ID:??? (+57,+29,-7)
    ダックタイピングはむしろ美徳だろ
    原始人乙としか言いようがない
    342 : nobodyさん - 2009/08/18(火) 23:44:31 ID:??? (+55,+27,-14)
    誰もダックタイピングの話なぞしていない
    343 : nobodyさん - 2009/08/18(火) 23:48:57 ID:??? (+57,+29,-36)
    stringやintを型指定できるようにするくらい
    コスト的には何でもないように思えるが、しない理由は何なのだろうか?
    ユダヤ教徒の宗教上の理由か?
    344 : nobodyさん - 2009/08/18(火) 23:55:18 ID:??? (+34,-27,-14)
    存在しないクラスStringでタイプヒンティングして
    出たエラーをハンドリングして判定したらいいんじゃね?
    345 : nobodyさん - 2009/08/18(火) 23:56:17 ID:??? (+3,-29,-55)
    is_string / is_int とかあるんだから内部的には型情報持ってる気がするんだけどね。

    ネームスペースのバックスラッシュもそうだけど、
    何らかの矛盾が生じる実装になっちゃってて技術的に難しいのかもね。
    346 : nobodyさん - 2009/08/19(水) 00:03:44 ID:??? (+62,+29,-26)
    >>344
    そんな面倒な事するなら普通に型チェックするコード書く方が早くね・・・?

    あとStringクラスが実在したらどーすんのw
    347 : nobodyさん - 2009/08/19(水) 00:05:41 ID:??? (+63,+30,-92)
    どんな型であれ受け取れるのが前提にあるとかそんな感じなんじゃないの
    一般的な意味でのオーバーロードもできないんだし

    まぁ型チェック程度なら一度値書きゃ使いまわせるし
    必ず値がこれだってわかってるなら決め打ってチェックかけなくてもいいしな
    例外?しるか、みたいないい加減な実装で、使える値はリファレンス見るか察してくれ
    ってのがPHPなんだと思ってる
    348 : nobodyさん - 2009/08/19(水) 02:11:50 ID:??? (+46,+18,-54)
    そりゃPHPが初心者向けに作られた言語だからだよ。Perlがuse strictを実質的に強制するようになって、一気にユーザが減った。
    349 : nobodyさん - 2009/08/19(水) 13:16:10 ID:??? (+97,-29,-47)
    >>337
    実装することは可能ではあるがPHPでそれをやっても価値がないということ
    POSTから文字列で渡ってくる通し番号のためにString→Int変換してから関数に渡すなんてのはもう古い
    350 : nobodyさん - 2009/08/19(水) 15:55:22 ID:??? (+57,+29,-6)
    気持ち悪い

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

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


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