私的良スレ書庫
不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitterでログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。
元スレ【PHP】フレームワークについて語るスレ13【総合】
php スレッド一覧へ / php とは? / 携帯版 / dat(gz)で取得 / トップメニューみんなの評価 : ○
レスフィルター : (試験中)
>>287
そうだ
そうだ
最近は2重ネストですら潰したくなって困る。
3重くらいまでは潰すメリットのが大きいが、この辺まで来ると趣味だな。
3重くらいまでは潰すメリットのが大きいが、この辺まで来ると趣味だな。
型は、ぶっちゃけ指定したくなるときあるな。
32bit機で64bit整数使いたいときがあったりもする。
俺の脳が古いんだろうけどな・・・。
32bit機で64bit整数使いたいときがあったりもする。
俺の脳が古いんだろうけどな・・・。
> 32bit機で64bit整数使いたいときがあったりもする。
32bit機で64bit整数使えない言語なんてあるの?
32bit機で64bit整数使えない言語なんてあるの?
>>306
phpだと、実数になっちゃうじゃん。
phpだと、実数になっちゃうじゃん。
>>306
php -r '$a=pow(2,62);$a++;$b=$a&1;print "$a $b\n";'
32bit機だと 4.6116860184274E+18 0
64bit機だと 4611686018427387905 1
型指定したくなる気持ちも分かる。
php -r '$a=pow(2,62);$a++;$b=$a&1;print "$a $b\n";'
32bit機だと 4.6116860184274E+18 0
64bit機だと 4611686018427387905 1
型指定したくなる気持ちも分かる。
扱う数字が32bitの範囲を超えそうだ!
というだけの理由で64bit環境を採用したうちの会社。
というだけの理由で64bit環境を採用したうちの会社。
必要ならすればいいがな
PHPでどんなときも型指定が必須だし、したいってのもお門違いだと思うけど。
PHPでどんなときも型指定が必須だし、したいってのもお門違いだと思うけど。
型指定したい時なんてそんなに頻繁にないし
したい時にチェックして例外投げりゃいいじゃん
したい時にチェックして例外投げりゃいいじゃん
基本やりたいことが実現するならやりたいようにやればいいけど。
人に強要しだすと面倒くさい。
メリットを強調してくれるならまだしも、趣味を押しつけられても困る。
人に強要しだすと面倒くさい。
メリットを強調してくれるならまだしも、趣味を押しつけられても困る。
>>320
へ?君の言ってる型指定ってどんなのを言ってるの?
へ?君の言ってる型指定ってどんなのを言ってるの?
リファレンスなりちゃんと用意してりゃ型指定とかしなくてもチェックだけで十分代用できると思うけどなぁ
<?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。
$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。
数値文字列混在させたswitch-caseのcase 0:の不具合はたしかに変な動作だけど
そもそもcase文に数値と文字列を混ぜて使うあたり頭悪いと思う
そもそもcase文に数値と文字列を混ぜて使うあたり頭悪いと思う
<?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 とかでもいい。多少気持ち悪いけど何より手っ取り早い
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 とかでもいい。多少気持ち悪いけど何より手っ取り早い
2を消し忘れてた
もう一年以上まともにPHP触ってないけど、多分これでいけるはず
もう一年以上まともにPHP触ってないけど、多分これでいけるはず
文字列と数値を同じ演算子で比較する、しかも、0始まりの文字列を適当に変換する、無理があったな。
function hoge(string $str, int $int)
{
}
って書けるのと、function内で型チェックして例外投げるのが同じとか言ってる人は頭弱すぎだろ。
強制じゃなく、必要な箇所にだけ型指定出来ればPHPDocも出力出来るし、便利だと思うんだけどね。
{
}
って書けるのと、function内で型チェックして例外投げるのが同じとか言ってる人は頭弱すぎだろ。
強制じゃなく、必要な箇所にだけ型指定出来ればPHPDocも出力出来るし、便利だと思うんだけどね。
いやだってPHPは文字列も整数も同じように扱えたほうが便利だよねってとこから
言語思想がスタートしてるんだから自分がPHPを選んだ上でそれを言うのは非常にナンセンスかと
言語思想がスタートしてるんだから自分がPHPを選んだ上でそれを言うのは非常にナンセンスかと
入力も出力も文字列だしな
いちいち内部で変換するとかC/C++で嫌なほど苦労した
いちいち内部で変換するとかC/C++で嫌なほど苦労した
自分でextention書けばいいだけ
PHPの型指定に文句言うのは小学生までだよねキャハハキモーイ
PHPの型指定に文句言うのは小学生までだよねキャハハキモーイ
checkdate()は$_POSTデータ直で渡したら転けた。
微妙にintオンリーとかあるよね。
微妙にintオンリーとかあるよね。
>>333
PHP5でOOPよりに思想が変化したじゃん。
引数として型指定出来るようになって、
それはPHPの良さを保ちつつ、必要な箇所は堅牢に出来るってイメージだったんだけど、
stringとかintを型指定出来ない理由が不明なんだよね。
気持ち悪いとは思わないのかなと。
PHP5でOOPよりに思想が変化したじゃん。
引数として型指定出来るようになって、
それはPHPの良さを保ちつつ、必要な箇所は堅牢に出来るってイメージだったんだけど、
stringとかintを型指定出来ない理由が不明なんだよね。
気持ち悪いとは思わないのかなと。
stringやintを型指定できるようにするくらい
コスト的には何でもないように思えるが、しない理由は何なのだろうか?
ユダヤ教徒の宗教上の理由か?
コスト的には何でもないように思えるが、しない理由は何なのだろうか?
ユダヤ教徒の宗教上の理由か?
存在しないクラスStringでタイプヒンティングして
出たエラーをハンドリングして判定したらいいんじゃね?
出たエラーをハンドリングして判定したらいいんじゃね?
is_string / is_int とかあるんだから内部的には型情報持ってる気がするんだけどね。
ネームスペースのバックスラッシュもそうだけど、
何らかの矛盾が生じる実装になっちゃってて技術的に難しいのかもね。
ネームスペースのバックスラッシュもそうだけど、
何らかの矛盾が生じる実装になっちゃってて技術的に難しいのかもね。
どんな型であれ受け取れるのが前提にあるとかそんな感じなんじゃないの
一般的な意味でのオーバーロードもできないんだし
まぁ型チェック程度なら一度値書きゃ使いまわせるし
必ず値がこれだってわかってるなら決め打ってチェックかけなくてもいいしな
例外?しるか、みたいないい加減な実装で、使える値はリファレンス見るか察してくれ
ってのがPHPなんだと思ってる
一般的な意味でのオーバーロードもできないんだし
まぁ型チェック程度なら一度値書きゃ使いまわせるし
必ず値がこれだってわかってるなら決め打ってチェックかけなくてもいいしな
例外?しるか、みたいないい加減な実装で、使える値はリファレンス見るか察してくれ
ってのがPHPなんだと思ってる
そりゃPHPが初心者向けに作られた言語だからだよ。Perlがuse strictを実質的に強制するようになって、一気にユーザが減った。
前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / php スレッド一覧へ
みんなの評価 : ○類似してるかもしれないスレッド
- 【PHP】フレームワークについて語るスレ10【総合】 (1001) - [98%] - 2008/8/24 19:04 ○
- 【PHP】フレームワークについて語るスレ10【総合】 (1001) - [98%] - 2008/12/23 16:48 ○
- 【PHP】フレームワークについて語るスレ12【総合】 (994) - [98%] - 2009/3/19 13:46 ○
- 【PHP】フレームワーク CakePHP 3ホール目【本命】 (1001) - [59%] - 2008/6/19 7:19 ○
- 【PHP】セッションについて語ろう!【PHP】 (829) - [58%] - 2018/6/27 23:16 ○
- 【PHP】フレームワーク CakePHP 4ホール目【v1.2】 (1001) - [57%] - 2008/12/19 21:06 ○
- 【PHP】フレームワーク CakePHP 6ホール目【v1.2】 (933) - [57%] - 2009/8/19 2:06 ○
- 【PHP】フレームワーク CakePHP 5ホール目【v1.2】 (985) - [57%] - 2009/3/7 4:53 ☆
- 【PHP】フレームワーク CakePHP 7ホール目【v1.2】 (1001) - [57%] - 2010/3/18 1:18 ○
トップメニューへ / →のくす牧場書庫について