X



さまざまな言語仕様について熱く語る闘技場
0178nobodyさん
垢版 |
2009/02/09(月) 14:46:33ID:???
void zend_do_print(znode *result, znode *arg TSRMLS_DC)
{
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);
}
0179nobodyさん
垢版 |
2009/02/09(月) 20:41:25ID:???
>>177
echo は、(カンマ)で区切って、連続で引数をぶちこめる。
printはできない。
0180nobodyさん
垢版 |
2009/02/09(月) 20:49:46ID:???
そうなるとprintなんて必要ないよな
配布スクリプトなんか覗くとprint使ってるやつがいるので不思議でたまらない
0181nobodyさん
垢版 |
2009/02/09(月) 21:10:42ID:???
printは成功すると1を返す。
echoは何も返さない。
0182nobodyさん
垢版 |
2009/02/09(月) 23:30:44ID:???
$a=1;

$a ? echo 'aaa' : echo 'bbb'; //error
$a ? print 'aaa' : print 'bbb'; //ok
0183nobodyさん
垢版 |
2009/02/10(火) 05:47:16ID:???
三項演算子の場合普通式の先頭から書かないか?
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:???
>>185

flagがビットフラグ(整数)だったり
priceが税計算機能つきのItemPriceクラスのオブジェクトだったらどうすんの?
0188nobodyさん
垢版 |
2009/03/18(水) 11:35:53ID:???
常識の範囲内ならどうでもいい。

つまりは、priceがlongからItemPriceに変わるというように
型が変わることがあるってこった。
それは避けられないからハンガリアンはよくない。
0189nobodyさん
垢版 |
2009/03/18(水) 11:36:32ID:???
クラスでゲッターやセッター使ってれば
タイプヒンティングも使えるし、型よりも値の範囲を絞って
例外を飛ばせるから全く問題ない。

一度処理に入ったら長い処理が行われるのではなくて
1回毎のシンプルな処理をセッションやクッキー使ってどうにか
継続させるのがWebアプリだから、ユーザー側のデータは
1回毎に改変が無いか毎回チェックする事になるし、型があってもなくても関係ない。
0191nobodyさん
垢版 |
2009/03/19(木) 09:49:02ID:???
>>190
議論はここでおk
無駄なスレは使わなくておk
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:???
それハンガリアンの意義から逸脱してるよなw
0196nobodyさん
垢版 |
2011/05/13(金) 23:21:15.36ID:nIBGPhUJ
そう? 意義とは?
0197nobodyさん
垢版 |
2011/05/13(金) 23:30:39.71ID:???
俺が立てたクソスレがまだあるとは思わなかった
0199nobodyさん
垢版 |
2017/12/30(土) 14:35:43.67ID:YhlYw6jg
誰でも簡単にネットで稼げる方法など
参考までに、
⇒ 『半藤のブブイウイウレレ』 というサイトで見ることができます。

グーグル検索⇒『半藤のブブイウイウレレ』

L32JIAVAJE
0200nobodyさん
垢版 |
2023/09/22(金) 00:03:53.38ID:???
ウム(メ▼▼)y-i_(・o・ ;)オヤブンドウゾ!!
レスを投稿する


ニューススポーツなんでも実況