さまざまな言語仕様について熱く語る闘技場

0001nobodyさん2008/12/08(月) 13:15:56 ID:???
ROUND 1開始!

0002nobodyさん2008/12/08(月) 13:19:45 ID:???
PHPのarray()は関数です。以上

0003nobodyさん2008/12/08(月) 18:38:20 ID:???
配列を作るたびに、いちいち
array
って、書かないといけないの、なんとかならないの?

perlだったら、

@a=(1,2,3,4,5);

これで、すぐに配列作れるのに。

なんで、いちいち、arrayとかって、
言ってあげないとわからないの?
それと、配列のくせに、シジルが$なのも
むかつきます。納得できません。

0004nobodyさん2008/12/08(月) 18:41:45 ID:???
仕様です

0005nobodyさん2008/12/08(月) 19:01:20 ID:???
arrayは関数ではありません。以上

0006nobodyさん2008/12/08(月) 19:02:23 ID:???
無知乙
関数ですよ
キミはperlから入ってきたからPHPの仕様をよく知らないようだ

0007nobodyさん2008/12/08(月) 19:05:18 ID:???
>>6
無知な君のために証拠を見せてあげてもいいが、
見せてくれって頼まれてもいないのに見せたんじゃ、
知恵の押し売りになっちまうからな。
結論だけ。
システム仕様としてPHPのarrayは関数ではありません。

0008nobodyさん2008/12/08(月) 20:32:22 ID:???
>>6
無知乙

0009nobodyさん2008/12/08(月) 20:34:25 ID:???
popって、配列関係の関数に決まってるのに、なんで
いちいち、わざわざ
array_pop
とかって、「array」を接頭辞につけるの?

pop、だけで十分、意味がわかるし、通じるじゃん。

実際、perlでは、「pop」だけで世の中回ってるよ?

0010nobodyさん2008/12/08(月) 20:45:50 ID:???
perlしか知らないからそう思うのです

0011nobodyさん2008/12/09(火) 00:40:18 ID:???
arrayは特殊ではあるが関数だよ

因みにissetやemptyは関数じゃない

0012nobodyさん2008/12/09(火) 07:17:29 ID:???
>>11
システム内で関数として定義されていると考えてよいの?

システム内では関数ではないが、関数っぽい動作するから関数として考えてもいいっていう文脈ではなくて?

0013nobodyさん2008/12/10(水) 14:05:11 ID:???
時代はwhitespaceですよ。

0014nobodyさん2008/12/10(水) 16:15:22 ID:???
なにやら混乱があるようだけど、 array() は関数ではないよ。echo などと同
様、言語構成要素の一つ。

array($x, $y,) のように、array()は最後の引数のあとにも , を置くことがで
きる。
http://jp.php.net/manual/ja/function.array.php

これは、array()の評価のされ方が、関数と同じではないことを示している。一
般のユーザがPHPやCで関数を書いて、array()と同じ挙動をさせることはできな
い。このことから明らかに、array()はPHPの構文解析器そのものに組み込まれ
た言語構成要素。

また array()はコールバックとして他の関数に与えることもできない。
http://jp.php.net/manual/ja/language.pseudo-types.php
これもやはり、 array()が関数ではなく言語構成要素だから。LISPで言えば、
高階関数にスペシャルフォームを与えることはできないのと同じ。

0015nobodyさん2008/12/10(水) 16:17:25 ID:???
>>9
> popって、配列関係の関数に決まってるのに、なんで
> いちいち、わざわざ
> array_pop
> とかって、「array」を接頭辞につけるの?

それはたぶん、PHPに名前空間がなかったから。
Perlにはパッケージがある。

0016nobodyさん2008/12/10(水) 19:03:12 ID:???
>>14
言語構成要素の1つではあるが何故関数で無いと言いきれるんだ?
arrayの注意点にはこうある
注意: array()は、実際にはリテラル配列を表現するための 言語構成要素であり、通常の関数ではありません。 echoやissetはこうだ
注意: これは、関数ではなく言語構造のため、可変関数 を用いてコールすることはできません。
arrayは言語構成要素の1つではあるが
言語構造では無く特殊な関数と言うことじゃねぇの?
ここらへんの説明よろしく

0017nobodyさん2008/12/10(水) 19:04:48 ID:???
>>14
言語構成要素の1つではあるが何故関数で無いと言いきれるんだ?

arrayの注意点にはこうある
注意: array()は、実際にはリテラル配列を表現するための 言語構成要素であり、通常の関数ではありません。

 echoやissetはこうだ
注意: これは、関数ではなく言語構造のため、可変関数 を用いてコールすることはできません。

arrayは言語構成要素の1つではあるが
言語構造では無く特殊な関数と言うことじゃねぇの?
ここらへんの説明よろしく

なんか改行が変になったので再

0018nobodyさん2008/12/10(水) 20:16:36 ID:???
>>17
すまんが問われている意図がいまいちよくわからん。
逆に問い返させてくれ。

1. 「特殊な関数」って何だ?array()がその一つだと考えていることは分かっ
 たが、他にはどんなのがある?

自分の考えでは、PHPには「特殊な関数」というカテゴリはない。関数か、そう
でないかだ。

で、関数かどうかは、「関数のように評価され実行されるもの」が関数だ。
array()は、構文解析器に備わった、関数を評価する汎用的な仕組みでは評価で
きないから関数ではない。
array()を評価するためには、構文解析器にarray()専用の仕組みが必要だ。

2. 「言語構成要素」と「言語構造」の違いは何だ?PHPではどれが言語構成要
素で、どれが言語構造なんだ?

自分の考えでは、この二者に違いはない。いずれも、構文解析器に専用の仕組
みを必要とするものだ。

0019nobodyさん2008/12/10(水) 20:20:22 ID:???
もしかしたらいるかもしれない外野のために補足すると、自分はLISPの、関数
とスペシャルフォーム(特殊形式)の解析方法の違いを念頭に置いて書いている。

0020nobodyさん2008/12/10(水) 20:22:10 ID:???
そんな遠まわしに書かなくても、すっきり明快な答えの出し方がある。
もうすこし、関数を勉強してくれ、諸君。

0021nobodyさん2008/12/10(水) 20:26:39 ID:???
そんな些細な言葉の違いを言うなら原文ではどっちもlanguage construct。
パーサトークンであり構文。
http://jp.php.net/manual/ja/tokens.php
注釈が違うのはそもそも何かを処理するものでもない
arrayを可変コールすることなんざまずないからじゃね。

0022nobodyさん2008/12/10(水) 20:38:29 ID:???
>>20
すまんがどっちを批判しているのか分からんかった。自分はSICPとか読んでる
けど、まだ分かってかもと不安になっちゃったよ。
しかし、普通のプログラマが「関数」という概念そのものを勉強するメリットっ
て、なかなか見えないだろうし、見えないと勉強しないと思うんだが。

>>21
おお、なんと明快な答えだ!
原文と、パーサトークンの一覧ページに当たれば、一目瞭然だな。
実はPHPの経験は浅いので、パーサトークンのページは知らなかった。ありがとう。

0023nobodyさん2008/12/10(水) 20:40:14 ID:???
>>18
> 自分の考えでは、PHPには「特殊な関数」というカテゴリはない。
> 関数か、そうでないかだ。

特殊関数 つ ttp://jp.php.net/manual/ja/language.oop.magic-functions.php

0024202008/12/10(水) 20:41:34 ID:???
>>22
どちらか片方を批判してるわけじゃない。
簡単に結論が出る内容を、よくわかってない者同士が、状況証拠を
並べ立ててワーギャーやってるので、書いてみた

0025nobodyさん2008/12/10(水) 20:51:32 ID:???
>>23
なんだ、特殊関数という用語があるのか。
しかしそれはぜんぜん文脈が違う。__sleepや__wakeupは、特定の機会に必ずコー
ルされるというだけで、評価の仕組み自体は通常の関数となんら変わらない。

>>24
それは失礼した。また恥をかいてしまったが、あなたのおかげで勉強になりま
した。ありがとう。

0026nobodyさん2008/12/10(水) 20:56:36 ID:???
>>25
おれは何も勉強させたつもりはないし、有用な情報は提示していないが?
特殊関数といっても、普通はマジックメソッドってみんな言ってるやつを
訳者が特殊関数って書いてるだけだと思う。
だからどうということはないが。

0027nobodyさん2008/12/10(水) 21:10:56 ID:???
>>26
まあ勝手に感謝されたら気持ちが悪いかもしれないが、情報の価値はその受け
手が決めるもんです。PHP入門者の自分はまさにその情報を欲していた。

つうかあなたが「くだ質」スレに登場してたら、話は早かったのになあ。
http://pc11.2ch.net/test/read.cgi/php/1226517332/961-
http://pc11.2ch.net/test/read.cgi/php/1228667259/13-27
まあ自分はあっちのスレには書いてないけど。

マジックメソッドについては分かってる。今度は原文をちゃんと読んだし。

0028nobodyさん2008/12/10(水) 21:17:57 ID:???
>>27
理解したのなら俺にどちらなのか教えてくれ
もし関数でなく言語構造というのであれば
何故態々”通常の”関数ではありません。 と書いてあるのか

0029nobodyさん2008/12/10(水) 21:51:32 ID:???
>>28
うん、関数ではなくて言語構造。>>21氏のとおり、パーサトークン一覧に載っ
ているから明らか。

"通常の" 関数(regular function) と書いている理由は分からんけど、自分は
これは、通常の関数のほかに特殊な関数があるのではなくて、関数というもの
は(みんな)通常、arrayは関数でない特殊なもの、と書いてるだけだと思う。

0030nobodyさん2008/12/10(水) 22:08:54 ID:???
>>29
特殊な物なら何故通常のと態々つけるの?
echoやincludeも()つけて書けて関数のような形に見えるけど
それぞれの説明にちゃんと言語構造ですと書いてあり通常のとは書いて無いよ?

0031nobodyさん2008/12/10(水) 22:19:26 ID:???
>>30
でも>>29のように、関数を通常、関数以外を特殊という読解もできるよね?
もちろんあなたの言うようにも読める。原文の記述があいまいなんだよ。
で、決定的根拠は>>21

0032nobodyさん2008/12/10(水) 22:21:12 ID:???
日本語訳した野郎の勝手な解釈が含まれてるってことだお

0033nobodyさん2008/12/10(水) 22:24:30 ID:???
[arrayは言語構造なの!] 攻撃:95 素早さ:40 防御:37 命中:83 運:43 HP:200
[arrayは関数だゴルァ!] 攻撃:28 素早さ:65 防御:37 命中:52 運:21 HP:163

arrayは言語構造なの! vs arrayは関数だゴルァ! 戦闘開始!!
[arrayは関数だゴルァ!]の攻撃 HIT [arrayは言語構造なの!]は1のダメージを受けた。
[arrayは言語構造なの!]の攻撃 HIT [arrayは関数だゴルァ!]は169のダメージを受けた。
[arrayは言語構造なの!]が[arrayは関数だゴルァ!]を倒しました(ラウンド数:1)。

0034nobodyさん2008/12/10(水) 22:26:07 ID:???
いや、原文があいまい。訳者は責められんと思う。

> Note: array() is a language construct used to represent literal
> arrays, and not a regular function.

0035nobodyさん2008/12/10(水) 22:34:34 ID:???
>>31
関数以外を特殊と言うのであれば
何故issetやemptyあとlist等に通常と言う言葉が無いのさ
arrayだけ別の表現をする意味が無いよね

しかもだ
言語構成要素であり、通常の関数ではありません。
と言語構成要素という言葉があるの通常の関数ではないと
態々関数だけど特殊だよという風な書き方をしている

0036nobodyさん2008/12/10(水) 22:35:28 ID:???
>>33
...。
あんまり勝負って考え方は好きじゃないなあ。
みんなが正しい結論に到達して、みんなが得した、と考える方がよくない?

まあスレタイ通りではあるけど。

0037nobodyさん2008/12/10(水) 22:40:46 ID:???
>>35
だからそれはPHPマニュアルの表記の不備だろうってば。

つうか、array はパーサトークンの一つだと>>21で示されて、それでも状況証
拠を主張し続ける理由が分からない。
パーサトークンという言葉だけでは、あなたは納得できない?

0038nobodyさん2008/12/10(水) 22:45:02 ID:???
顔真っ赤にして
http://pc11.2ch.net/test/read.cgi/php/1226517332/961
を否定してた奴涙目?
961の時点で正解出てるのに土曜日から今までほんとに何やってんだ

0039nobodyさん2008/12/10(水) 22:46:02 ID:???
言語構造か関数かは元のソースコードを見て判断するしかないだろ

0040nobodyさん2008/12/10(水) 22:50:47 ID:???
>>38
そういう言い方よくないと思うよ。彼(彼女)をきちんと納得させられないな
ら、むしろ自分たちがダメなんだと思う。

>>39
それは違う。ソースを読んだって、>>21と同じ情報が得られるだけだろう。

0041nobodyさん2008/12/10(水) 22:57:43 ID:???
だめなのは無知なのに理由もなく一方の主張を崩さず納得しない方だろ
疑問に思うなら自分で調べりゃいいのに

0042nobodyさん2008/12/10(水) 22:59:45 ID:???
>>37
できないかな

>>17に戻るけど
言語構成要素の1つではあるが何故関数で無いと言いきれるんだ?
言語構造の一部である事はマニュアルにも"言語構成要素であり"と書かれている

これらの原因がただ単にマニュアルの不備が原因である
とは考えにくいよ・・・
もしarrayのマニュアルがarrayが出来てから
更新されていないというのであればそれも有りえるだろうけど

0043nobodyさん2008/12/10(水) 22:59:59 ID:???
>>41
貴様もよく知らないくせに罵倒だけは一人前だなwwwwww

0044nobodyさん2008/12/10(水) 23:01:51 ID:???
パーサトークンという言葉を説明すればいいのかと思ってググったが、
PHPマニュアルばかり引っかかって、自分涙目。

弱ったな。どこかに分かりやすい説明ない?(他力本願)

自分はLISPのごく簡単な処理系を作ってみる以外の方法を思いつかないが、
あまりにも非現実的すぎる。
ここで納得してもらうためだけに最低限必要な知識ってなんだろう。

0045nobodyさん2008/12/10(水) 23:05:31 ID:???
さてと、パーサートークンなんてのは傍証に過ぎない。
なぜなら、パーサートークンかつ関数な特殊な関数である可能性を否定できないから。

しかし、おれはもっと確実にわかる方法を知っている。
もう少し、勉強したらいいよ諸君。

0046nobodyさん2008/12/10(水) 23:08:18 ID:???
わかる方法を書いてくれないかな
知ったかなんていらねーんだよ

0047nobodyさん2008/12/10(水) 23:12:55 ID:???
>>45
> なぜなら、パーサートークンかつ関数な特殊な関数である可能性を否定できないから。

えー、そういう話なの?
演算子はトークンだけど、実際には関数が割り当てられている、みたいな?
ここで問題になってるのは構文解析で、実装はまた別の話だと思ってたよ。


> しかし、おれはもっと確実にわかる方法を知っている。
> もう少し、勉強したらいいよ諸君。

勉強はがんばりますので、どうか教えてください。

0048nobodyさん2008/12/10(水) 23:24:50 ID:???
構文解析の話に絞ったのは君のハンドリングに過ぎない
45はロジックとして証明にならないといっているだけ

0049nobodyさん2008/12/10(水) 23:35:07 ID:???
システム上のことはコードで確認する。
文理上のことはドキュメントで確認するのが道理。

0050nobodyさん2008/12/10(水) 23:44:02 ID:???
結局のところ、話のレイヤーが違うってことだよな。
ドキュメント上は関数に分類されてて明確に否定されてないので関数であると考えるのが妥当。
ドキュメントはいろんな要件で書かれるからレイヤーの違いを理解できない人がいても仕方ないか。
システム上は判定一つ書けば結論でるしな。あれとか、それとか。

0051nobodyさん2008/12/10(水) 23:46:15 ID:???
高木さんならわかるんじゃないのかね

0052nobodyさん2008/12/10(水) 23:51:08 ID:???
で、システム上はこうよ
try {
ReflectionFunction::export("array");
} catch(Exception $e) {
echo $e->getMessage();
}

0053nobodyさん2008/12/10(水) 23:52:01 ID:???
ま、function_existsで調べればtrue falseで返してくれるわけだけど。

0054nobodyさん2008/12/10(水) 23:54:32 ID:???
>>51
高木さんじゃなくて、大垣さんのほうが確実

0055nobodyさん2008/12/11(木) 00:02:45 ID:???
ドキュメントもバグレポート出せば変わるから、
変わったその日から名実ともに関数じゃなくなるだろうね。

しかし、このルーズさというか曖昧さがPHPのいいところ
関数でも式でもないっていったって、言語構造っていったって、
if (include("test.php"))のreturnの扱いとか、特殊としか言いようがない。

0056nobodyさん2008/12/11(木) 09:50:56 ID:???
めんどくさいから海外のMLとに投稿したり開発元にメールして聞いてみたらいいんじゃないの

0057nobodyさん2008/12/11(木) 10:07:48 ID:???
そろそろ結論でたでしょ。
・言語解析上は、array()はT_ARRAYであって、T_FUNCTIONではない。
・一般に関数とは、引数が与えられて一定の結果を返すものという意味では関数
・ドキュメント上では関数に分類されているが、T_FUNCTIONではないという注釈がつく
・パーサートークンの中には式(≒関数)として評価されるものがいくつかある。
・中でもarrayは関数的性質が強い。(副作用が少なく線形写像的)
・よって、ドキュメント上の表記に差異がある。

結論は各自が導きだせばよい
例1)array()は言語解析上は関数ではないが、一般論的には関数に分類される。
例2)array()は広義では関数だが、厳密には関数ではない。
例3)PHPの話をするなら言語解析だけで十分なので関数ではない。
などなど。
事情を分かった上であれば、害はない。

0058nobodyさん2008/12/11(木) 17:25:38 ID:???
答えでてないじゃんあんたは例えだしてるだけでしょ

0059nobodyさん2008/12/11(木) 17:45:58 ID:???
お、そうかい?
> 結論は各自が導きだせばよい

結論 = f(事情);
fの定義によって結論が変わるというのがこの現象のすべてで
その例を出せば十分だろう。

0060nobodyさん2008/12/11(木) 18:23:36 ID:???
echoが文字を出力するという結論に代わりがないように
arrayもだせよ

0061nobodyさん2008/12/11(木) 18:32:01 ID:???
おいおい

> echoが文字を出力する

それは何の結論なんだよ

0062nobodyさん2008/12/11(木) 18:34:06 ID:???
例1 echoは文字を出力する
例2 echoは配列をarrayと出力する
例3 echoはカンマで区切って出力できる
例4 if (echo("hoge")) print("hoge");はパースエラー

0063nobodyさん2008/12/11(木) 18:35:48 ID:???
echo ってカンマ使えたの?

0064nobodyさん2008/12/11(木) 20:23:19 ID:???
PHPに文句あるなら、言う相手は開発元のZendだろ?
ここでグダグダ言っても、Zendには声が届かない。

…と思ったが、参考になりました^^

0065nobodyさん2008/12/11(木) 20:52:34 ID:???
zendって開発元だったの?
スポンサーじゃなかったっけ?

0066nobodyさん2008/12/11(木) 21:02:47 ID:???
perlってオープンソースなの?
perlがオープンソースだから
PHPをカンタンに作れたの?

0067nobodyさん2008/12/11(木) 21:12:13 ID:???
phpはCからできてますお

0068nobodyさん2008/12/12(金) 06:06:09 ID:???
まぁ、PerlがPHPやJSPのようにHTMLソースのインラインで実行できたら、
まぁ、もっと初心者を取り込めたかもしれないねぇ。
まぁ、CPANの仕組みをもう少し落ち着いて考えたらよかったかもねぇ。
まぁ、そうならなくてよかったと思ってるPerlerは多いかもしれないけど、
まぁ、・・・

0069nobodyさん2008/12/12(金) 11:23:10 ID:???
なんか詳しい人が多そうなので、聞いてみたいことがある。
PHPって、存在しないプロパティに値を代入すると、その場でプロパティが生ま
れるよね?

php -r '$hoge = new stdClass; $hoge->fuga = "ふがふが\n"; echo $hoge->fuga;'
=> ふがふが

これってPHPマニュアルのどこに書いてあるの?
オーバーロードの説明は読んだ。__set()の説明はあったけど、__set()の中身
が何もないデフォルトの場合の挙動の説明は見つけられなかった。
おかげでずっと、新しいプロパティが生まれていることに気づかなかった。

0070nobodyさん2008/12/12(金) 14:04:46 ID:???
>>69
質問はくだ質へ

0071nobodyさん2008/12/12(金) 14:39:12 ID:???
>>70
くだ質にはちょっと前に同じ質問がされてたんだよ。しかし回答はなかった。
たぶんPHPマニュアルには載ってないんだろう。

この辺の挙動を知っておかないとオーバーロードは理解できないのに、PHPマニュ
アルには載ってないんだとしたら、詳しい人たちはどうやってこれを知って理
解したのか聞きたいんだよ。

ちなみにPHPマニュアルのページ下のコメント欄みたいなところには載ってた。
しかしあそこはホントに玉石混交で、あそこにだけ載ってても意味ないだろ。

0072nobodyさん2008/12/12(金) 14:47:03 ID:???
>>71
ちょっと前の同じ質問ってどれ?

0073nobodyさん2008/12/12(金) 14:53:17 ID:???
>>72
今見てみたら、前スレの470だった。
http://pc11.2ch.net/test/read.cgi/php/1226517332/470
いろいろやり取りしてたけど、結局PHPマニュアルの当該URLは出てない。

0074nobodyさん2008/12/12(金) 15:00:03 ID:???

0075nobodyさん2008/12/12(金) 15:15:12 ID:???
>>74
違うってよ。俺は__set()がユーザによって定義されてない、素のオブジェクト
の挙動の話をしてんの。>>69のコード読んでよ。これはPHP4でも動くんだよ。

そのリンク先のは、
> $obj->a = 1;
> echo $obj->a . "\n\n";
とかやってるけど、これは全部PHP5以降の __set()と__get()が呼ばれてるだろ。

0076nobodyさん2008/12/12(金) 15:27:30 ID:???

0077nobodyさん2008/12/12(金) 15:44:48 ID:???
>>76
おお、ありがとう。しかしこれ微妙に違うんじゃね?

これは
1.「未定義の変数をクラスとして扱うとstdClassのインスタンスになる」
ことの説明であって、

2.「任意のインスタンスは、未定義のプロパティをセットできる」
ことの説明じゃないだろ?

もちろん2.を前提として1.が説明されているわけだけど、2.そのものの説明は
どっかにないの?

0078nobodyさん2008/12/12(金) 15:46:13 ID:???
屁理屈こねるやつだな

0079nobodyさん2008/12/12(金) 15:52:28 ID:???
実際違うんだから仕方がない。

0080nobodyさん2008/12/12(金) 16:25:40 ID:???
つうか、このオブジェクトの挙動について、元々知ってた人はどのくらいいる?
いるとしたら、どうやって知った?
これをPHPマニュアル読んで知った人って、一人でもいる?

0081nobodyさん2008/12/13(土) 00:40:30 ID:???
おお!勉強になります!もっとやれ!!!…いや、みんなで考えよう(・∀・)

0082nobodyさん2008/12/13(土) 06:10:54 ID:???
憶測:
PHPの由来はHTML文書中で簡単に<?php echo $hoge;?>するのが目的だったので、
変数は宣言せず、最初に代入等がおおなわれた時に作成される。
というのが基本仕様で、昔のマニュアルでは見かけたことがある。
これは、現在のマニュアルの「変数」のページにも
PHPでは変数を初期化する必要はないが、という控えめな表現で触れてある。

PHP4で導入されたクラス・オブジェクトでもそのことは変わらず、
メンバー変数の宣言はできるものの、実際のところ、代入によって
変数が育成されるという仕様に変更はなかった。

PHP5になって、public,protected,privateの区別を宣言できるようになったが、
宣言がない、もしくはvarで宣言された場合、PHP4互換となる。
また、PHP5ではクラス用のマジックメソッドが用意された。

これにより、宣言していないメンバー変数に対してオブジェクトからアクセスすると、
メンバー変数が作られるという"仕様"が結果的に発生する。
しかし、制御したい場合は__setでreturn null;なり例外を発生させることで、
宣言していないメンバー変数を使わせないというシステム仕様は実現できるので、
特に不自由することはない。

おもしろいのは、前者の仕様で運用すると、同じクラスから発生したオブジェクトなのに、
なのに、メンバー変数一覧に差異が生じ、get_object_varsでクエリを自動育成などを
やろうとすると、不具合の原因になるが、それは仕様の乱用と考えるのが妥当か。

ながーい、憶測ですんまそん。

0083nobodyさん2008/12/13(土) 09:49:00 ID:???
>PHPの由来はHTML文書中で簡単に<?php echo $hoge;?>するのが目的だったので、
>変数は宣言せず、最初に代入等がおおなわれた時に作成される。
<?php echo $hoge;?>これのどこが代入なんだ?

0084nobodyさん2008/12/13(土) 11:53:59 ID:???
>>83
> <?php echo $hoge;?>これのどこが代入なんだ?

どこに、それが代入だって書いてある?

0085nobodyさん2008/12/13(土) 11:55:05 ID:???
なんだこいつ

0086nobodyさん2008/12/13(土) 15:53:42 ID:???
変数宣言必須なコンパイラ環境でのリテラシーを持たないやつには、
インタプリタ環境での変数動的割り当てによる収穫について理解するのは難しい。

0087nobodyさん2008/12/14(日) 02:27:01 ID:???
みんなが使ってみたプログラミング言語は?

じゃあ、俺から。
C→Perl→Java→PHP→SQL→JavaScript→Excel VBA

次は、ActionScriptを勉強したいです。

0088nobodyさん2008/12/14(日) 02:36:26 ID:???
SQLってプログラミング言語なんだ

0089nobodyさん2008/12/14(日) 05:58:30 ID:???
>>87
ひどい順番だなw
SQLを使わずにJavaでなにやってんだかw
何一つ習得できなかったとかいう落ちはやめてくれよな
JS使えてればASなんて勉強するまでもない。

0090nobodyさん2008/12/14(日) 11:49:11 ID:???
>>88
プログラムは、「データ」とデータの「処理」から成り立っている。
一応SQLでも、処理(条件分岐とか)が書けるんだよね。

cf.日経ソフトウエア 2008年 03月号 p.55
分類/基礎となる計算モデル/事例
手続き型言語/チューリングマシン/C, Java
問い合わせ言語(非手続き型言語)/関係モデル/SQL
関数型言語(非手続き型言語)/ラムダ計算/Lisp, Haskell
論理型言語(非手続き型言語)/一階述語言語/Prolog

こういう知識って、学校の授業で勉強する場合は、計算科学やソフトウェア工学という科目で習うのかな?

0091nobodyさん2008/12/14(日) 11:58:38 ID:???
そんなんプログラミングするなら中学生にだって基礎知識だろ

0092nobodyさん2008/12/14(日) 12:11:59 ID:???
>>89
Javaはオブジェクト指向の教材として役立ちました!
…しょぼいアプレットが作れます><

ActionScript → Flash、Flex、AIRでWEBアプリを作る
広がる妄想(アイデア)が実現できれば、手段(プログラム言語)は何でもいいんだけど^^

0093nobodyさん2008/12/14(日) 12:18:50 ID:???
じゃphpで十分じゃん

0094nobodyさん2008/12/14(日) 12:21:13 ID:???
今の高校は「情報」という授業があるらしいね。
http://www.mext.go.jp/a_menu/shotou/zyouhou/main18_a2.htm
=このスレのネタみたいに、関数がどうとか熱く語り合っているのかな?

量子コンピューターの設計とか、プログラミング言語をデザインするとか、
スーパーハッカーみたいな中学生ばかりだったら、技術立国日本の未来は明るいwww

0095nobodyさん2008/12/14(日) 12:22:27 ID:???
お前あほか。おっさん乙。

0096nobodyさん2008/12/14(日) 12:29:48 ID:???
Simple is best.
簡単にできることを複雑にやる必要はない。

=WEBアプリなら、既存の資産を活かしてPerl、PHPで十分

0097nobodyさん2008/12/14(日) 12:40:36 ID:???
C、アセンブラのおかげで、ハードの仕組みが理解できるようになった。
Javaのおかげで、オブジェクト指向の話が理解できるようになった。
WEBプログラミングのおかげで、サーバー、ネットワークの話が理解できるようになった。

<今後の課題>
1.デザインパターンのマスター
2.LISPやScheme等の関数型言語をマスター
3.将来実用化されるであろう量子コンピューターについて予習しておく

WEBアプリが自由自在に作れるようになったら、小遣い稼ぎのPHPは卒業だな!(・∀・)

0098nobodyさん2008/12/14(日) 12:54:56 ID:???
量子コンピューターってプログラミング言語っていうレイヤーじゃないよな?

おれはPHPのかたわら、Haskellで遊んでみたけど、目から鱗。
PHPコードも洗練されてくるからおもしろい。

0099nobodyさん2008/12/14(日) 13:19:12 ID:???
マスターとか言ってる奴がまともな技術と知識を持ってたためしがない

0100nobodyさん2008/12/14(日) 17:24:38 ID:???
他人の自分語りほどウザイものはないよね〜

0101nobodyさん2008/12/14(日) 22:02:13 ID:???
俺が最初に覚えた言語はHTML。
その中でも、<body>に関しちゃ、ネイティブ?って言われることがある

0102nobodyさん2008/12/14(日) 23:56:30 ID:???
C>html>>>越えられない壁>>>php

0103nobodyさん2008/12/15(月) 17:36:09 ID:???
このまま糞スレ化→dat落ちさせるのは惜しいな。
PHPの言語仕様について話し合える場所は少ない。

0104nobodyさん2008/12/15(月) 17:42:21 ID:???
安心していいよ、このスレは残る
消えるのはお前だけだから

0105nobodyさん2008/12/16(火) 22:48:52 ID:???
HTMLは高級言語って話は聞いたことあるけどCSSって言語?

0106nobodyさん2008/12/16(火) 22:52:43 ID:9RkOzYwl
echoとprintは文字を出力することは同じなのに
なんで二つも同じことができるんですか?

0107nobodyさん2008/12/16(火) 22:58:39 ID:???
PHPスレのテンプレ

0108nobodyさん2008/12/16(火) 23:02:16 ID:???
テンプレの回答は求めてないですよ

0109nobodyさん2008/12/16(火) 23:10:00 ID:???
じゃ何を求めてんの?

0110nobodyさん2008/12/16(火) 23:19:35 ID:???
力…!!!

0111nobodyさん2008/12/19(金) 21:04:10 ID:???
CSSも、関数やらロジックを実装するようになってきたからなぁ。
叙事詩的定義もなにか新しいプログラミング言語のように感じる

0112nobodyさん2008/12/19(金) 21:38:10 ID:???
>>111
CSSの関数ってのはググったら見つかったけど、
例)CSS//関数
http://suika.fam.cx/~wakaba/wiki/sw/n/CSS++%E9%96%A2%E6%95%B0

> 叙事詩的定義
ってのはぜんぜん見つからない。"epic(al) definition" でも該当なし。
詳細プリーズ。

0113nobodyさん2008/12/19(金) 22:09:17 ID:???
形容しただけだろ
日本語能力だいじょうぶか?

0114nobodyさん2008/12/19(金) 22:39:27 ID:???
で、形容するとどういう意味になるんだい?

0115nobodyさん2008/12/19(金) 22:45:24 ID:???
短文煽りは不快なだけで何も生み出さないからやめようぜ。
そのうち Kusakabe (void) みたいになっちまうぞ。

0116nobodyさん2008/12/19(金) 23:04:19 ID:???
>>113-114はストレスたまっててここで発散したいんです!

0117nobodyさん2008/12/19(金) 23:06:25 ID:???
>>106 に遅レス。

なんで echo と print の二つがあるかというと、まあ以下の文書に解説がある
わけだけど、

FAQTs - Knowledge Base - View Entry - What is the difference between echo and print?
http://www.faqts.com/knowledge_base/view.phtml/aid/1/fid/40

どうも読んでてまだるっこしい。

2番目とか、
「echo は文(statement)、printは式(expression)」
こう書いたら、ずっとスッキリすると思うんだが。

そういう専門用語を使いたくないのかもしれないが、statement やexpression
程度の簡単な概念すら避けて説明するのは間違っていると思う。

これは外部リンクだけど、PHPマニュアルは全体的にそんな印象。

0118nobodyさん2008/12/19(金) 23:08:40 ID:???
作った張本人たちもアバウトってことですね

0119nobodyさん2008/12/19(金) 23:16:45 ID:???
>>118
さすがに張本人は分かってなきゃ作れないだろ。
単にユーザへの説明の仕方の問題だと思う。

0120nobodyさん2008/12/20(土) 10:04:15 ID:???
本家のMLに参加して質問するのが近道ですね

0121nobodyさん2008/12/20(土) 12:44:45 ID:???
英語ができたらなあ。自然言語を書くのはは難しい...。

0122nobodyさん2008/12/20(土) 12:46:50 ID:???
プログラミングと英語はほとんど同じような気が・・・

0123nobodyさん2008/12/20(土) 12:55:36 ID:???



J

0124nobodyさん2008/12/20(土) 12:56:40 ID:???
そうかあ?自然言語は理詰めで書けないじゃないか。
文法だけ覚えても engrish.com に載るような英文しか書けない。

0125nobodyさん2008/12/20(土) 13:28:24 ID:???
PG言語も文法だけ覚えてもサンプルに載ってるような英文しか書けない。

0126nobodyさん2008/12/20(土) 13:33:18 ID:???
if (i = no money) {you are ogottekureru me}else{you are keti}

0127nobodyさん2008/12/20(土) 15:55:32 ID:???
まさか英語ができないやつとかいるの?

0128nobodyさん2008/12/20(土) 15:56:26 ID:???
お前だけだろ

0129nobodyさん2008/12/20(土) 16:21:45 ID:???
俺は英語ができると思ったことはないな。
一応、片言で会話したり、英語のドキュメントも
英文サイトは普通に読めるから不自由はしないけど、
英語で恋愛はできんw

0130nobodyさん2008/12/20(土) 16:27:31 ID:???
いや今話してるのは
メーリングリストに投稿するとか
その程度のレベルの話だから。

0131nobodyさん2008/12/20(土) 16:28:39 ID:???
お、そうか、>>120からの流れね。数レス前も読まずに書いて寸摩損

0132nobodyさん2008/12/20(土) 16:45:53 ID:???
どうやってMLに入会するのかもわからない
普通に申請するだけじゃだめみたいね

0133nobodyさん2008/12/20(土) 16:58:17 ID:???
入会の仕方書いてあるでしょ。
「英語」で(藁

0134nobodyさん2008/12/20(土) 18:00:46 ID:???
英語がわからないから入会方法がわからないって捉えられないとかゆとりですか?

0135nobodyさん2008/12/21(日) 00:33:12 ID:???
OK! well, let's talk in English here.

0136nobodyさん2008/12/21(日) 00:34:49 ID:???
このスレを見ている人はこんなスレも見ています。(ver 0.20)
pixiv自前イラスト向上スレ part7 [CG]
【ショタ】3次専ショタスレ 10【女装・美少年】 [Download]

... what are you interested in ? (^^;

0137nobodyさん2008/12/21(日) 05:34:29 ID:???
なんで学生時代に英語勉強しなかったの?

0138nobodyさん2008/12/21(日) 05:54:32 ID:???
俺はセンターで9割近くは取ったが、いまだに英語ができる気がしない。

All your base are belong to us - Wikipedia
http://ja.wikipedia.org/wiki/All_your_base_are_belong_to_us
これも解説を読まなきゃ分からんかった。

0139nobodyさん2008/12/21(日) 05:58:34 ID:???
英語のオンラインゲームできれば
「英語できる」と認定していいと思う

0140nobodyさん2008/12/22(月) 01:06:32 ID:???
I try to write the comment on program code from yesterday.
It's cooooool!!! ;-p

0141nobodyさん2008/12/28(日) 21:22:18 ID:???
「phpできます!」なんて自信たっぷりに言われた時の恥ずかしさ - ドグマを探しに
http://d.hatena.ne.jp/crenlif/20081114/1226660315

> PHPのあれが駄目とかじゃなく、もし神様(何の?)が、今までのは無かった
> ことにしてPHPをどこでも3ヶ所直していいよっていったらどうするかっての
> を聞いてみたいです。

具体的な内容はリンク先を参照。この辺ほんとに直らんものかなあ。

0142nobodyさん2008/12/28(日) 21:25:58 ID:???
結局関数名と記法の話?

0143nobodyさん2008/12/28(日) 21:43:51 ID:???
>>142
違うだろ。

0144nobodyさん2008/12/28(日) 22:07:40 ID:???
別の話。

PHPでの内部変数の扱われ方 - PHP5のオブジェクトコピーでありがちな勘違い - PHPプロ!ニュース
http://www.phppro.jp/news/304

コピーオンライト - Wikipedia
http://ja.wikipedia.org/wiki/%E3%82%B3%E3%83%94%E3%83%BC%E3%82%AA%E3%83%B3%E3%83%A9%E3%82%A4%E3%83%88

arrayはオブジェクトじゃないのでコピーオンライトは行われないかと思ったが、
実行時間を見ると、どうやらちゃんとコピーオンライトしているらしい。

~ $ time php -r '$a=range(0, 100000);'
0.069 secs
~ $ time php -r '$a=range(0, 100000); $b=$a;'
0.068 secs
~ $ time php -r '$a=range(0, 100000); $b=$a; $b[100]=0;'
0.117 secs

0145nobodyさん2008/12/28(日) 22:13:34 ID:???
>>143
どうして?

0146nobodyさん2008/12/28(日) 22:17:57 ID:???
$bの値を書き換えた後、実行時間が2倍近くになってるだろ。

0147nobodyさん2008/12/28(日) 22:35:05 ID:???

0148nobodyさん2008/12/28(日) 22:44:54 ID:???
違う?
じゃあどうして $b の一部を書き換えると、実行時間がこんなに延びんの?

0149nobodyさん2008/12/28(日) 22:45:55 ID:???
あ、環境書いてなかった。

~ $ php --version
PHP 5.2.6 (cli) (built: Sep 13 2008 11:13:29)
Copyright (c) 1997-2008 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2008 Zend Technologies

0150nobodyさん2008/12/28(日) 22:55:23 ID:???
つうかググればすぐ言及するページは見つかる。やっぱりcopy on write だ。

Big arrays in PHP
http://brian.moonspot.net/2007/02/28/big-arrays-in-php/

> If the array is static then you don't really have to assign it by
> reference, since in PHP 5 all (non-object) variables are
> copy-on-write. So as long as you don't change the value then a copy
> isn't made.

php.netにはどこに書いてあるのか分からん。バグレポートばかり引っかかる。

0151nobodyさん2008/12/28(日) 23:10:01 ID:???
この辺の挙動はパフォーマンスに重大な影響を与えるのに、公式ドキュメント
には記述が見つからん。たぶん書いてないんだろう。

ライブラリの記述はそこそこだが言語仕様の記述は貧弱。こういうのがPHPの一
番直してほしいところだな。

0152nobodyさん2008/12/29(月) 14:19:27 ID:???
>>148
落ち着け。145は別の話だ。
そっちの話は143が説明できないようだが。

0153nobodyさん2009/01/02(金) 03:08:35 ID:???
Amazon.co.jp: はじめてのPHP言語プログラミング入門: 大垣 靖男: 本
http://www.amazon.co.jp/dp/4774122866

どうやらこの本がおすすめらしい。
PHPの言語仕様についてきちんと扱った本だという。

0154nobodyさん2009/01/02(金) 03:27:16 ID:???
何時の本だよ
言語仕様そんならマニュアルで十分

0155nobodyさん2009/01/02(金) 04:21:47 ID:???
大垣氏の名前は覚えておいて損はないよ。

0156nobodyさん2009/01/02(金) 04:29:37 ID:???
なんで?

0157nobodyさん2009/01/02(金) 12:56:51 ID:???
印税欲しいから。

0158nobodyさん2009/01/02(金) 16:53:02 ID:???

  ,j;;;;;j,. ---一、 `  ―--‐、_ l;;;;;;
 {;;;;;;ゝ T辷iフ i    f'辷jァ  !i;;;;;   
  ヾ;;;ハ    ノ       .::!lリ;;r゙    在日の方々はかわいそうな強制連行の被害者
   `Z;i   〈.,_..,.      ノ;;;;;;;;>     
   ,;ぇハ、 、_,.ー-、_',.    ,f゙: Y;;f      そんなふうに考えていた時期が
   〜''戈ヽ   `二´    r'´:::. `!    俺にもありました

0159nobodyさん2009/01/11(日) 18:25:25 ID:???
最近、個人的に面白いと思った言語仕様があるのだが、ここに書いてる時間が
ないし、書いても長くてウザがられそうなので、クイズにしてみる。

「PHP言語仕様・力試しクイズ」

$ php -r '$a=array(); $a["a"]= $a; var_dump($a);'
$ php -r '$a=array(); $a["a"]=&$a; var_dump($a);'

$ php -r '$a=new stdClass; $a->a= $a; var_dump($a);'
$ php -r '$a=new stdClass; $a->a=&$a; var_dump($a);'

(以下は PHP5(以上)でしか動かない)
$ php -r '$a=new stdClass; $a->a= clone $a; var_dump($a);'
$ php -r '$a=new ArrayObject(array()); $a["a"]= $a; var_dump($a);'
$ php -r '$a=new ArrayObject(array()); $a["a"]=&$a; var_dump($a);'
$ php -r '$a=new ArrayObject(array()); $a["a"]= clone $a; var_dump($a);'

Q1
これらのコードが、PHP4とPHP5で、それぞれどのような表示をするか、試して
みよう。自信のある人は試す前に予想してみよう。

Q2
>>144のリンク先の記事 http://www.phppro.jp/news/304 が正しいかどうか、
問題があるとしたらどこか、考えてみよう。

0160nobodyさん2009/01/14(水) 17:15:05 ID:???
>>153
作者乙

0161nobodyさん2009/01/14(水) 18:06:09 ID:???
大垣センセがこんなとこくるわけないだろw

0162nobodyさん2009/01/14(水) 18:38:30 ID:???
>>161
おお、やっと大垣さんの名前を知っている人が来たか。

よかったら>>159の問題を見てってくれ。
誰にもやってもらえなくてさびしい。

0163nobodyさん2009/01/14(水) 18:53:26 ID:???
つうか、PHPのリファレンスって、要するにインスタンスに別名をつけることで、
仕組み自体はきわめて単純なものなんだよな。他言語で一般に言われるリファ
レンスと似ても似つかないだけで(俺だったら「エイリアス」とか命名したと
思う)。

わかりにくいのは、なんでPHPはこんな、他言語にはない奇妙な仕組みを必要と
するかだ。PHPのリファレンスはいつ、どのようなときに必要なのか。それを理
解するには、PHPの変数と各種インスタンスの挙動を理解する必要がある。

>>159のクイズは、まさにその辺の問題を扱っている。まあちょっと再帰を絡ま
せてしまったんで分かりにくくなってしまったが、再帰は枝葉で、本題にした
いのはそっちだ。

0164nobodyさん2009/01/14(水) 18:59:55 ID:???
>>162
その問題、最初に出現したときに解いて、全問正解だったよ。
でもそんなこと書いたって意味ないから書かなかっただけ。
いろんなところにコピペしなくていいよ。

0165nobodyさん2009/01/14(水) 19:05:36 ID:???
参照でおもしろいのは、引数を参照で受け取る関数で、
それがオブジェクトであることを期待してるのに、NULLだった場合とかに、
関数の中で何もしないのに、var_dumpすると再帰になるようなスクリプトで
別のメモリ領域にズレが生じるとか。

0166nobodyさん2009/01/14(水) 19:09:11 ID:???
>>164
ちょっと待て。これどこかにコピペされてんの?
俺はここと、くだ質スレ79にしか書き込んでないぞ。

まあそんなことはどうでもいいか。
全問正解とはすごいな。俺自身、Q1の最後から2番目は、自分でも動かしてみな
いと分からんかった。

どうやって勉強した?PHPマニュアルだけでは>>159は分からんと思うが。
参考にさせてほしい。

あとQ2の答えを、手短でいいから書いてみてくれないか?

0167nobodyさん2009/01/14(水) 19:13:09 ID:???
君見苦しいぞ

0168nobodyさん2009/01/14(水) 19:13:20 ID:???
>>165
> 関数の中で何もしないのに、var_dumpすると再帰になるようなスクリプトで

すまんがここの意味が分からん。
なんかコードの実例で示してもらえんか?

0169nobodyさん2009/01/14(水) 19:17:29 ID:???
>>167
意味不明。

0170nobodyさん2009/01/14(水) 19:42:19 ID:???
>>166
参照代入を行った場合のrefcountが違う

0171nobodyさん2009/01/14(水) 22:04:23 ID:???
見苦しい人がちょっといたほうが盛り上がるよ

0172nobodyさん2009/01/14(水) 22:17:55 ID:???
盛り下がっちゃったわけだが

0173nobodyさん2009/01/17(土) 07:18:25 ID:???
>>159
Q2の答えまだ〜?

0174nobodyさん2009/02/08(日) 20:48:24 ID:???
緊急浮上あげ

0175nobodyさん2009/02/09(月) 02:15:47 ID:???
俺も大垣先生の本は分かりやすいと思った。
PHP6が出たら、改訂版の投入をお願いします!><
図書館で借りて読むけどw

0176nobodyさん2009/02/09(月) 11:41:42 ID:???
本人乙

0177nobodyさん2009/02/09(月) 14:13:32 ID:???
echo と print の厳密な違いを教えてください

0178nobodyさん2009/02/09(月) 14:46:33 ID:???
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:25 ID:???
>>177
echo は、(カンマ)で区切って、連続で引数をぶちこめる。
printはできない。

0180nobodyさん2009/02/09(月) 20:49:46 ID:???
そうなるとprintなんて必要ないよな
配布スクリプトなんか覗くとprint使ってるやつがいるので不思議でたまらない

0181nobodyさん2009/02/09(月) 21:10:42 ID:???
printは成功すると1を返す。
echoは何も返さない。

0182nobodyさん2009/02/09(月) 23:30:44 ID:???
$a=1;

$a ? echo 'aaa' : echo 'bbb'; //error
$a ? print 'aaa' : print 'bbb'; //ok

0183nobodyさん2009/02/10(火) 05:47:16 ID:???
三項演算子の場合普通式の先頭から書かないか?

0184nobodyさん2009/02/10(火) 06:33:49 ID:???
一例ってことで

0185nobodyさん2009/03/18(水) 11:34:00 ID:???
システムハンガリアンって評判悪いじゃん。
たしかにC++みたいに型が違う値を代入しようとしたら
速攻でエラー吐くコンパイラにかけるんなら意味ないかと思うけど、
PHPみたいに元の型が何であろうが無視して新しい型にしてくれちゃう言語は、
ひるがえって『単なる型名を変数名につける』ってのが有効じゃないかと思うんだ。
PHPにおいてはアプリケーションハンガリアンよりシステムハンガリアンのほうがいい気がしてる。
ハンガリアンに限らず、PHPの柔軟すぎる型変換に適した命名規約を考えてくれ。

0186nobodyさん2009/03/18(水) 11:34:45 ID:???
そもそも、ハンガリアンが嫌われているのは
変数に実際に入れる型がいろいろ変わるからなわけだが。

>>185はバグ回避のために違う型を入れないようにするためと
いっているのだと思うが、間違った型を入れるとか言う以前に
ソフトウェアの性質上、型は変わるものなんだよ。
(変数に最初に想定していた型以外のものを入れることになる)

時代の流れとともに16bit変数は32bit変数に変わるし、
32bitポインタは64bitポインタに変わるし、
オブジェクト指向言語なら、型は継承され新しい型になる。

PHPのような柔軟な言語だからこそ、なおさらハンガリアンは必要ない。
それにハンガリアン(変数の頭に型を入れる)を使うまでもなく
変数名そのものが型をあらわしている。flagならtrue/falseだし、priceなら数値だろう。

0187nobodyさん2009/03/18(水) 11:35:28 ID:???
>>185

flagがビットフラグ(整数)だったり
priceが税計算機能つきのItemPriceクラスのオブジェクトだったらどうすんの?

0188nobodyさん2009/03/18(水) 11:35:53 ID:???
常識の範囲内ならどうでもいい。

つまりは、priceがlongからItemPriceに変わるというように
型が変わることがあるってこった。
それは避けられないからハンガリアンはよくない。

0189nobodyさん2009/03/18(水) 11:36:32 ID:???
クラスでゲッターやセッター使ってれば
タイプヒンティングも使えるし、型よりも値の範囲を絞って
例外を飛ばせるから全く問題ない。

一度処理に入ったら長い処理が行われるのではなくて
1回毎のシンプルな処理をセッションやクッキー使ってどうにか
継続させるのがWebアプリだから、ユーザー側のデータは
1回毎に改変が無いか毎回チェックする事になるし、型があってもなくても関係ない。

0190nobodyさん2009/03/18(水) 23:00:28 ID:???
終了
以後こちらへ

システムハンガリアンってPHPでは有効じゃね?
http://pc11.2ch.net/test/read.cgi/php/1237179147/

0191nobodyさん2009/03/19(木) 09:49:02 ID:???
>>190
議論はここでおk
無駄なスレは使わなくておk

0192◇N.OaZ1nFN22009/11/03(火) 12:55:24 ID:???
テスト

0193nobodyさん2011/04/22(金) 23:18:04.56 ID:itzBhGqM
Mono最強伝説
http://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.01 ID:???
システムハンガリアン病だわ・・・

HTMLでさえも<span id="spanHoge">とか<input type="text" name="txtHoge">とか
しないと気が済まない_| ̄|○

0195nobodyさん2011/05/13(金) 03:59:57.23 ID:???
それハンガリアンの意義から逸脱してるよなw

0196nobodyさん2011/05/13(金) 23:21:15.36 ID:nIBGPhUJ
そう? 意義とは?

0197nobodyさん2011/05/13(金) 23:30:39.71 ID:???
俺が立てたクソスレがまだあるとは思わなかった

ROUND2はなさそうだな

新着レスの表示
レスを投稿する