さまざまな言語仕様について熱く語る闘技場
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2008/12/08(月) 13:15:56ID:???0166nobodyさん
2009/01/14(水) 19:09:11ID:???ちょっと待て。これどこかにコピペされてんの?
俺はここと、くだ質スレ79にしか書き込んでないぞ。
まあそんなことはどうでもいいか。
全問正解とはすごいな。俺自身、Q1の最後から2番目は、自分でも動かしてみな
いと分からんかった。
どうやって勉強した?PHPマニュアルだけでは>>159は分からんと思うが。
参考にさせてほしい。
あとQ2の答えを、手短でいいから書いてみてくれないか?
0167nobodyさん
2009/01/14(水) 19:13:09ID:???0168nobodyさん
2009/01/14(水) 19:13:20ID:???> 関数の中で何もしないのに、var_dumpすると再帰になるようなスクリプトで
すまんがここの意味が分からん。
なんかコードの実例で示してもらえんか?
0171nobodyさん
2009/01/14(水) 22:04:23ID:???0172nobodyさん
2009/01/14(水) 22:17:55ID:???0174nobodyさん
2009/02/08(日) 20:48:24ID:???0175nobodyさん
2009/02/09(月) 02:15:47ID:???PHP6が出たら、改訂版の投入をお願いします!><
図書館で借りて読むけどw
0176nobodyさん
2009/02/09(月) 11:41:42ID:???0177nobodyさん
2009/02/09(月) 14:13:32ID:???0178nobodyさん
2009/02/09(月) 14:46:33ID:???{
zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);
opline->result.op_type = IS_TMP_VAR;
opline->result.u.var = get_temporary_variable(CG(active_op_array));
opline->opcode = ZEND_PRINT;
opline->op1 = *arg;
SET_UNUSED(opline->op2);
*result = opline->result;
}
void zend_do_echo(znode *arg TSRMLS_DC)
{
zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);
opline->opcode = ZEND_ECHO;
opline->op1 = *arg;
SET_UNUSED(opline->op2);
}
0180nobodyさん
2009/02/09(月) 20:49:46ID:???配布スクリプトなんか覗くとprint使ってるやつがいるので不思議でたまらない
0181nobodyさん
2009/02/09(月) 21:10:42ID:???echoは何も返さない。
0182nobodyさん
2009/02/09(月) 23:30:44ID:???$a ? echo 'aaa' : echo 'bbb'; //error
$a ? print 'aaa' : print 'bbb'; //ok
0183nobodyさん
2009/02/10(火) 05:47:16ID:???0184nobodyさん
2009/02/10(火) 06:33:49ID:???0185nobodyさん
2009/03/18(水) 11:34:00ID:???たしかにC++みたいに型が違う値を代入しようとしたら
速攻でエラー吐くコンパイラにかけるんなら意味ないかと思うけど、
PHPみたいに元の型が何であろうが無視して新しい型にしてくれちゃう言語は、
ひるがえって『単なる型名を変数名につける』ってのが有効じゃないかと思うんだ。
PHPにおいてはアプリケーションハンガリアンよりシステムハンガリアンのほうがいい気がしてる。
ハンガリアンに限らず、PHPの柔軟すぎる型変換に適した命名規約を考えてくれ。
0186nobodyさん
2009/03/18(水) 11:34:45ID:???変数に実際に入れる型がいろいろ変わるからなわけだが。
>>185はバグ回避のために違う型を入れないようにするためと
いっているのだと思うが、間違った型を入れるとか言う以前に
ソフトウェアの性質上、型は変わるものなんだよ。
(変数に最初に想定していた型以外のものを入れることになる)
時代の流れとともに16bit変数は32bit変数に変わるし、
32bitポインタは64bitポインタに変わるし、
オブジェクト指向言語なら、型は継承され新しい型になる。
PHPのような柔軟な言語だからこそ、なおさらハンガリアンは必要ない。
それにハンガリアン(変数の頭に型を入れる)を使うまでもなく
変数名そのものが型をあらわしている。flagならtrue/falseだし、priceなら数値だろう。
0187nobodyさん
2009/03/18(水) 11:35:28ID:???flagがビットフラグ(整数)だったり
priceが税計算機能つきのItemPriceクラスのオブジェクトだったらどうすんの?
0188nobodyさん
2009/03/18(水) 11:35:53ID:???つまりは、priceがlongからItemPriceに変わるというように
型が変わることがあるってこった。
それは避けられないからハンガリアンはよくない。
0189nobodyさん
2009/03/18(水) 11:36:32ID:???タイプヒンティングも使えるし、型よりも値の範囲を絞って
例外を飛ばせるから全く問題ない。
一度処理に入ったら長い処理が行われるのではなくて
1回毎のシンプルな処理をセッションやクッキー使ってどうにか
継続させるのがWebアプリだから、ユーザー側のデータは
1回毎に改変が無いか毎回チェックする事になるし、型があってもなくても関係ない。
0190nobodyさん
2009/03/18(水) 23:00:28ID:???以後こちらへ
システムハンガリアンってPHPでは有効じゃね?
http://pc11.2ch.net/test/read.cgi/php/1237179147/
0192◇N.OaZ1nFN2
2009/11/03(火) 12:55:24ID:???0193nobodyさん
2011/04/22(金) 23:18:04.56ID:itzBhGqMhttp://ja.wikipedia.org/wiki/XSP_(Web%E3%82%B5%E3%83%BC%E3%83%90%E3%83%BC)
0194nobodyさん
2011/05/13(金) 03:48:00.01ID:???HTMLでさえも<span id="spanHoge">とか<input type="text" name="txtHoge">とか
しないと気が済まない_| ̄|○
0195nobodyさん
2011/05/13(金) 03:59:57.23ID:???0196nobodyさん
2011/05/13(金) 23:21:15.36ID:nIBGPhUJ0197nobodyさん
2011/05/13(金) 23:30:39.71ID:???■ このスレッドは過去ログ倉庫に格納されています