>>71
ちょっと前の同じ質問ってどれ?
さまざまな言語仕様について熱く語る闘技場
72nobodyさん
2008/12/12(金) 14:47:03ID:???73nobodyさん
2008/12/12(金) 14:53:17ID:??? >>72
今見てみたら、前スレの470だった。
http://pc11.2ch.net/test/read.cgi/php/1226517332/470
いろいろやり取りしてたけど、結局PHPマニュアルの当該URLは出てない。
今見てみたら、前スレの470だった。
http://pc11.2ch.net/test/read.cgi/php/1226517332/470
いろいろやり取りしてたけど、結局PHPマニュアルの当該URLは出てない。
74nobodyさん
2008/12/12(金) 15:00:03ID:???75nobodyさん
2008/12/12(金) 15:15:12ID:???76nobodyさん
2008/12/12(金) 15:27:30ID:???77nobodyさん
2008/12/12(金) 15:44:48ID:??? >>76
おお、ありがとう。しかしこれ微妙に違うんじゃね?
これは
1.「未定義の変数をクラスとして扱うとstdClassのインスタンスになる」
ことの説明であって、
2.「任意のインスタンスは、未定義のプロパティをセットできる」
ことの説明じゃないだろ?
もちろん2.を前提として1.が説明されているわけだけど、2.そのものの説明は
どっかにないの?
おお、ありがとう。しかしこれ微妙に違うんじゃね?
これは
1.「未定義の変数をクラスとして扱うとstdClassのインスタンスになる」
ことの説明であって、
2.「任意のインスタンスは、未定義のプロパティをセットできる」
ことの説明じゃないだろ?
もちろん2.を前提として1.が説明されているわけだけど、2.そのものの説明は
どっかにないの?
78nobodyさん
2008/12/12(金) 15:46:13ID:??? 屁理屈こねるやつだな
79nobodyさん
2008/12/12(金) 15:52:28ID:??? 実際違うんだから仕方がない。
80nobodyさん
2008/12/12(金) 16:25:40ID:??? つうか、このオブジェクトの挙動について、元々知ってた人はどのくらいいる?
いるとしたら、どうやって知った?
これをPHPマニュアル読んで知った人って、一人でもいる?
いるとしたら、どうやって知った?
これをPHPマニュアル読んで知った人って、一人でもいる?
81nobodyさん
2008/12/13(土) 00:40:30ID:??? おお!勉強になります!もっとやれ!!!…いや、みんなで考えよう(・∀・)
82nobodyさん
2008/12/13(土) 06:10:54ID:??? 憶測:
PHPの由来はHTML文書中で簡単に<?php echo $hoge;?>するのが目的だったので、
変数は宣言せず、最初に代入等がおおなわれた時に作成される。
というのが基本仕様で、昔のマニュアルでは見かけたことがある。
これは、現在のマニュアルの「変数」のページにも
PHPでは変数を初期化する必要はないが、という控えめな表現で触れてある。
PHP4で導入されたクラス・オブジェクトでもそのことは変わらず、
メンバー変数の宣言はできるものの、実際のところ、代入によって
変数が育成されるという仕様に変更はなかった。
PHP5になって、public,protected,privateの区別を宣言できるようになったが、
宣言がない、もしくはvarで宣言された場合、PHP4互換となる。
また、PHP5ではクラス用のマジックメソッドが用意された。
これにより、宣言していないメンバー変数に対してオブジェクトからアクセスすると、
メンバー変数が作られるという"仕様"が結果的に発生する。
しかし、制御したい場合は__setでreturn null;なり例外を発生させることで、
宣言していないメンバー変数を使わせないというシステム仕様は実現できるので、
特に不自由することはない。
おもしろいのは、前者の仕様で運用すると、同じクラスから発生したオブジェクトなのに、
なのに、メンバー変数一覧に差異が生じ、get_object_varsでクエリを自動育成などを
やろうとすると、不具合の原因になるが、それは仕様の乱用と考えるのが妥当か。
ながーい、憶測ですんまそん。
PHPの由来はHTML文書中で簡単に<?php echo $hoge;?>するのが目的だったので、
変数は宣言せず、最初に代入等がおおなわれた時に作成される。
というのが基本仕様で、昔のマニュアルでは見かけたことがある。
これは、現在のマニュアルの「変数」のページにも
PHPでは変数を初期化する必要はないが、という控えめな表現で触れてある。
PHP4で導入されたクラス・オブジェクトでもそのことは変わらず、
メンバー変数の宣言はできるものの、実際のところ、代入によって
変数が育成されるという仕様に変更はなかった。
PHP5になって、public,protected,privateの区別を宣言できるようになったが、
宣言がない、もしくはvarで宣言された場合、PHP4互換となる。
また、PHP5ではクラス用のマジックメソッドが用意された。
これにより、宣言していないメンバー変数に対してオブジェクトからアクセスすると、
メンバー変数が作られるという"仕様"が結果的に発生する。
しかし、制御したい場合は__setでreturn null;なり例外を発生させることで、
宣言していないメンバー変数を使わせないというシステム仕様は実現できるので、
特に不自由することはない。
おもしろいのは、前者の仕様で運用すると、同じクラスから発生したオブジェクトなのに、
なのに、メンバー変数一覧に差異が生じ、get_object_varsでクエリを自動育成などを
やろうとすると、不具合の原因になるが、それは仕様の乱用と考えるのが妥当か。
ながーい、憶測ですんまそん。
83nobodyさん
2008/12/13(土) 09:49:00ID:??? >PHPの由来はHTML文書中で簡単に<?php echo $hoge;?>するのが目的だったので、
>変数は宣言せず、最初に代入等がおおなわれた時に作成される。
<?php echo $hoge;?>これのどこが代入なんだ?
>変数は宣言せず、最初に代入等がおおなわれた時に作成される。
<?php echo $hoge;?>これのどこが代入なんだ?
85nobodyさん
2008/12/13(土) 11:55:05ID:??? なんだこいつ
86nobodyさん
2008/12/13(土) 15:53:42ID:??? 変数宣言必須なコンパイラ環境でのリテラシーを持たないやつには、
インタプリタ環境での変数動的割り当てによる収穫について理解するのは難しい。
インタプリタ環境での変数動的割り当てによる収穫について理解するのは難しい。
87nobodyさん
2008/12/14(日) 02:27:01ID:??? みんなが使ってみたプログラミング言語は?
じゃあ、俺から。
C→Perl→Java→PHP→SQL→JavaScript→Excel VBA
次は、ActionScriptを勉強したいです。
じゃあ、俺から。
C→Perl→Java→PHP→SQL→JavaScript→Excel VBA
次は、ActionScriptを勉強したいです。
88nobodyさん
2008/12/14(日) 02:36:26ID:??? SQLってプログラミング言語なんだ
89nobodyさん
2008/12/14(日) 05:58:30ID:???90nobodyさん
2008/12/14(日) 11:49:11ID:??? >>88
プログラムは、「データ」とデータの「処理」から成り立っている。
一応SQLでも、処理(条件分岐とか)が書けるんだよね。
cf.日経ソフトウエア 2008年 03月号 p.55
分類/基礎となる計算モデル/事例
手続き型言語/チューリングマシン/C, Java
問い合わせ言語(非手続き型言語)/関係モデル/SQL
関数型言語(非手続き型言語)/ラムダ計算/Lisp, Haskell
論理型言語(非手続き型言語)/一階述語言語/Prolog
こういう知識って、学校の授業で勉強する場合は、計算科学やソフトウェア工学という科目で習うのかな?
プログラムは、「データ」とデータの「処理」から成り立っている。
一応SQLでも、処理(条件分岐とか)が書けるんだよね。
cf.日経ソフトウエア 2008年 03月号 p.55
分類/基礎となる計算モデル/事例
手続き型言語/チューリングマシン/C, Java
問い合わせ言語(非手続き型言語)/関係モデル/SQL
関数型言語(非手続き型言語)/ラムダ計算/Lisp, Haskell
論理型言語(非手続き型言語)/一階述語言語/Prolog
こういう知識って、学校の授業で勉強する場合は、計算科学やソフトウェア工学という科目で習うのかな?
91nobodyさん
2008/12/14(日) 11:58:38ID:??? そんなんプログラミングするなら中学生にだって基礎知識だろ
92nobodyさん
2008/12/14(日) 12:11:59ID:??? >>89
Javaはオブジェクト指向の教材として役立ちました!
…しょぼいアプレットが作れます><
ActionScript → Flash、Flex、AIRでWEBアプリを作る
広がる妄想(アイデア)が実現できれば、手段(プログラム言語)は何でもいいんだけど^^
Javaはオブジェクト指向の教材として役立ちました!
…しょぼいアプレットが作れます><
ActionScript → Flash、Flex、AIRでWEBアプリを作る
広がる妄想(アイデア)が実現できれば、手段(プログラム言語)は何でもいいんだけど^^
93nobodyさん
2008/12/14(日) 12:18:50ID:??? じゃphpで十分じゃん
94nobodyさん
2008/12/14(日) 12:21:13ID:??? 今の高校は「情報」という授業があるらしいね。
http://www.mext.go.jp/a_menu/shotou/zyouhou/main18_a2.htm
=このスレのネタみたいに、関数がどうとか熱く語り合っているのかな?
量子コンピューターの設計とか、プログラミング言語をデザインするとか、
スーパーハッカーみたいな中学生ばかりだったら、技術立国日本の未来は明るいwww
http://www.mext.go.jp/a_menu/shotou/zyouhou/main18_a2.htm
=このスレのネタみたいに、関数がどうとか熱く語り合っているのかな?
量子コンピューターの設計とか、プログラミング言語をデザインするとか、
スーパーハッカーみたいな中学生ばかりだったら、技術立国日本の未来は明るいwww
95nobodyさん
2008/12/14(日) 12:22:27ID:??? お前あほか。おっさん乙。
96nobodyさん
2008/12/14(日) 12:29:48ID:??? Simple is best.
簡単にできることを複雑にやる必要はない。
=WEBアプリなら、既存の資産を活かしてPerl、PHPで十分
簡単にできることを複雑にやる必要はない。
=WEBアプリなら、既存の資産を活かしてPerl、PHPで十分
97nobodyさん
2008/12/14(日) 12:40:36ID:??? C、アセンブラのおかげで、ハードの仕組みが理解できるようになった。
Javaのおかげで、オブジェクト指向の話が理解できるようになった。
WEBプログラミングのおかげで、サーバー、ネットワークの話が理解できるようになった。
<今後の課題>
1.デザインパターンのマスター
2.LISPやScheme等の関数型言語をマスター
3.将来実用化されるであろう量子コンピューターについて予習しておく
WEBアプリが自由自在に作れるようになったら、小遣い稼ぎのPHPは卒業だな!(・∀・)
Javaのおかげで、オブジェクト指向の話が理解できるようになった。
WEBプログラミングのおかげで、サーバー、ネットワークの話が理解できるようになった。
<今後の課題>
1.デザインパターンのマスター
2.LISPやScheme等の関数型言語をマスター
3.将来実用化されるであろう量子コンピューターについて予習しておく
WEBアプリが自由自在に作れるようになったら、小遣い稼ぎのPHPは卒業だな!(・∀・)
98nobodyさん
2008/12/14(日) 12:54:56ID:??? 量子コンピューターってプログラミング言語っていうレイヤーじゃないよな?
おれはPHPのかたわら、Haskellで遊んでみたけど、目から鱗。
PHPコードも洗練されてくるからおもしろい。
おれはPHPのかたわら、Haskellで遊んでみたけど、目から鱗。
PHPコードも洗練されてくるからおもしろい。
99nobodyさん
2008/12/14(日) 13:19:12ID:??? マスターとか言ってる奴がまともな技術と知識を持ってたためしがない
100nobodyさん
2008/12/14(日) 17:24:38ID:??? 他人の自分語りほどウザイものはないよね〜
101nobodyさん
2008/12/14(日) 22:02:13ID:??? 俺が最初に覚えた言語はHTML。
その中でも、<body>に関しちゃ、ネイティブ?って言われることがある
その中でも、<body>に関しちゃ、ネイティブ?って言われることがある
102nobodyさん
2008/12/14(日) 23:56:30ID:??? C>html>>>越えられない壁>>>php
103nobodyさん
2008/12/15(月) 17:36:09ID:??? このまま糞スレ化→dat落ちさせるのは惜しいな。
PHPの言語仕様について話し合える場所は少ない。
PHPの言語仕様について話し合える場所は少ない。
104nobodyさん
2008/12/15(月) 17:42:21ID:??? 安心していいよ、このスレは残る
消えるのはお前だけだから
消えるのはお前だけだから
105nobodyさん
2008/12/16(火) 22:48:52ID:??? HTMLは高級言語って話は聞いたことあるけどCSSって言語?
106nobodyさん
2008/12/16(火) 22:52:43ID:9RkOzYwl echoとprintは文字を出力することは同じなのに
なんで二つも同じことができるんですか?
なんで二つも同じことができるんですか?
107nobodyさん
2008/12/16(火) 22:58:39ID:??? PHPスレのテンプレ
108nobodyさん
2008/12/16(火) 23:02:16ID:??? テンプレの回答は求めてないですよ
109nobodyさん
2008/12/16(火) 23:10:00ID:??? じゃ何を求めてんの?
110nobodyさん
2008/12/16(火) 23:19:35ID:??? 力…!!!
111nobodyさん
2008/12/19(金) 21:04:10ID:??? CSSも、関数やらロジックを実装するようになってきたからなぁ。
叙事詩的定義もなにか新しいプログラミング言語のように感じる
叙事詩的定義もなにか新しいプログラミング言語のように感じる
112nobodyさん
2008/12/19(金) 21:38:10ID:??? >>111
CSSの関数ってのはググったら見つかったけど、
例)CSS//関数
http://suika.fam.cx/~wakaba/wiki/sw/n/CSS++%E9%96%A2%E6%95%B0
> 叙事詩的定義
ってのはぜんぜん見つからない。"epic(al) definition" でも該当なし。
詳細プリーズ。
CSSの関数ってのはググったら見つかったけど、
例)CSS//関数
http://suika.fam.cx/~wakaba/wiki/sw/n/CSS++%E9%96%A2%E6%95%B0
> 叙事詩的定義
ってのはぜんぜん見つからない。"epic(al) definition" でも該当なし。
詳細プリーズ。
113nobodyさん
2008/12/19(金) 22:09:17ID:??? 形容しただけだろ
日本語能力だいじょうぶか?
日本語能力だいじょうぶか?
114nobodyさん
2008/12/19(金) 22:39:27ID:??? で、形容するとどういう意味になるんだい?
115nobodyさん
2008/12/19(金) 22:45:24ID:??? 短文煽りは不快なだけで何も生み出さないからやめようぜ。
そのうち Kusakabe (void) みたいになっちまうぞ。
そのうち Kusakabe (void) みたいになっちまうぞ。
117nobodyさん
2008/12/19(金) 23:06:25ID:??? >>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マニュアルは全体的にそんな印象。
なんで 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マニュアルは全体的にそんな印象。
118nobodyさん
2008/12/19(金) 23:08:40ID:??? 作った張本人たちもアバウトってことですね
120nobodyさん
2008/12/20(土) 10:04:15ID:??? 本家のMLに参加して質問するのが近道ですね
121nobodyさん
2008/12/20(土) 12:44:45ID:??? 英語ができたらなあ。自然言語を書くのはは難しい...。
122nobodyさん
2008/12/20(土) 12:46:50ID:??? プログラミングと英語はほとんど同じような気が・・・
123nobodyさん
2008/12/20(土) 12:55:36ID:??? |
|
|
J
|
|
J
124nobodyさん
2008/12/20(土) 12:56:40ID:??? そうかあ?自然言語は理詰めで書けないじゃないか。
文法だけ覚えても engrish.com に載るような英文しか書けない。
文法だけ覚えても engrish.com に載るような英文しか書けない。
125nobodyさん
2008/12/20(土) 13:28:24ID:??? PG言語も文法だけ覚えてもサンプルに載ってるような英文しか書けない。
126nobodyさん
2008/12/20(土) 13:33:18ID:??? if (i = no money) {you are ogottekureru me}else{you are keti}
127nobodyさん
2008/12/20(土) 15:55:32ID:??? まさか英語ができないやつとかいるの?
128nobodyさん
2008/12/20(土) 15:56:26ID:??? お前だけだろ
129nobodyさん
2008/12/20(土) 16:21:45ID:??? 俺は英語ができると思ったことはないな。
一応、片言で会話したり、英語のドキュメントも
英文サイトは普通に読めるから不自由はしないけど、
英語で恋愛はできんw
一応、片言で会話したり、英語のドキュメントも
英文サイトは普通に読めるから不自由はしないけど、
英語で恋愛はできんw
130nobodyさん
2008/12/20(土) 16:27:31ID:??? いや今話してるのは
メーリングリストに投稿するとか
その程度のレベルの話だから。
メーリングリストに投稿するとか
その程度のレベルの話だから。
132nobodyさん
2008/12/20(土) 16:45:53ID:??? どうやってMLに入会するのかもわからない
普通に申請するだけじゃだめみたいね
普通に申請するだけじゃだめみたいね
133nobodyさん
2008/12/20(土) 16:58:17ID:??? 入会の仕方書いてあるでしょ。
「英語」で(藁
「英語」で(藁
134nobodyさん
2008/12/20(土) 18:00:46ID:??? 英語がわからないから入会方法がわからないって捉えられないとかゆとりですか?
135nobodyさん
2008/12/21(日) 00:33:12ID:??? OK! well, let's talk in English here.
136nobodyさん
2008/12/21(日) 00:34:49ID:??? このスレを見ている人はこんなスレも見ています。(ver 0.20)
pixiv自前イラスト向上スレ part7 [CG]
【ショタ】3次専ショタスレ 10【女装・美少年】 [Download]
... what are you interested in ? (^^;
pixiv自前イラスト向上スレ part7 [CG]
【ショタ】3次専ショタスレ 10【女装・美少年】 [Download]
... what are you interested in ? (^^;
137nobodyさん
2008/12/21(日) 05:34:29ID:??? なんで学生時代に英語勉強しなかったの?
138nobodyさん
2008/12/21(日) 05:54:32ID:??? 俺はセンターで9割近くは取ったが、いまだに英語ができる気がしない。
All your base are belong to us - Wikipedia
http://ja.wikipedia.org/wiki/All_your_base_are_belong_to_us
これも解説を読まなきゃ分からんかった。
All your base are belong to us - Wikipedia
http://ja.wikipedia.org/wiki/All_your_base_are_belong_to_us
これも解説を読まなきゃ分からんかった。
139nobodyさん
2008/12/21(日) 05:58:34ID:??? 英語のオンラインゲームできれば
「英語できる」と認定していいと思う
「英語できる」と認定していいと思う
140nobodyさん
2008/12/22(月) 01:06:32ID:??? I try to write the comment on program code from yesterday.
It's cooooool!!! ;-p
It's cooooool!!! ;-p
141nobodyさん
2008/12/28(日) 21:22:18ID:??? 「phpできます!」なんて自信たっぷりに言われた時の恥ずかしさ - ドグマを探しに
http://d.hatena.ne.jp/crenlif/20081114/1226660315
> PHPのあれが駄目とかじゃなく、もし神様(何の?)が、今までのは無かった
> ことにしてPHPをどこでも3ヶ所直していいよっていったらどうするかっての
> を聞いてみたいです。
具体的な内容はリンク先を参照。この辺ほんとに直らんものかなあ。
http://d.hatena.ne.jp/crenlif/20081114/1226660315
> PHPのあれが駄目とかじゃなく、もし神様(何の?)が、今までのは無かった
> ことにしてPHPをどこでも3ヶ所直していいよっていったらどうするかっての
> を聞いてみたいです。
具体的な内容はリンク先を参照。この辺ほんとに直らんものかなあ。
142nobodyさん
2008/12/28(日) 21:25:58ID:??? 結局関数名と記法の話?
144nobodyさん
2008/12/28(日) 22:07:40ID:??? 別の話。
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
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
146nobodyさん
2008/12/28(日) 22:17:57ID:??? $bの値を書き換えた後、実行時間が2倍近くになってるだろ。
148nobodyさん
2008/12/28(日) 22:44:54ID:??? 違う?
じゃあどうして $b の一部を書き換えると、実行時間がこんなに延びんの?
じゃあどうして $b の一部を書き換えると、実行時間がこんなに延びんの?
149nobodyさん
2008/12/28(日) 22:45:55ID:??? あ、環境書いてなかった。
~ $ 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
~ $ 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
150nobodyさん
2008/12/28(日) 22:55:23ID:??? つうかググればすぐ言及するページは見つかる。やっぱり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にはどこに書いてあるのか分からん。バグレポートばかり引っかかる。
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にはどこに書いてあるのか分からん。バグレポートばかり引っかかる。
151nobodyさん
2008/12/28(日) 23:10:01ID:??? この辺の挙動はパフォーマンスに重大な影響を与えるのに、公式ドキュメント
には記述が見つからん。たぶん書いてないんだろう。
ライブラリの記述はそこそこだが言語仕様の記述は貧弱。こういうのがPHPの一
番直してほしいところだな。
には記述が見つからん。たぶん書いてないんだろう。
ライブラリの記述はそこそこだが言語仕様の記述は貧弱。こういうのがPHPの一
番直してほしいところだな。
153nobodyさん
2009/01/02(金) 03:08:35ID:??? Amazon.co.jp: はじめてのPHP言語プログラミング入門: 大垣 靖男: 本
http://www.amazon.co.jp/dp/4774122866
どうやらこの本がおすすめらしい。
PHPの言語仕様についてきちんと扱った本だという。
http://www.amazon.co.jp/dp/4774122866
どうやらこの本がおすすめらしい。
PHPの言語仕様についてきちんと扱った本だという。
154nobodyさん
2009/01/02(金) 03:27:16ID:??? 何時の本だよ
言語仕様そんならマニュアルで十分
言語仕様そんならマニュアルで十分
155nobodyさん
2009/01/02(金) 04:21:47ID:??? 大垣氏の名前は覚えておいて損はないよ。
156nobodyさん
2009/01/02(金) 04:29:37ID:??? なんで?
157nobodyさん
2009/01/02(金) 12:56:51ID:??? 印税欲しいから。
158nobodyさん
2009/01/02(金) 16:53:02ID:???,j;;;;;j,. ---一、 ` ―--‐、_ l;;;;;;
{;;;;;;ゝ T辷iフ i f'辷jァ !i;;;;;
ヾ;;;ハ ノ .::!lリ;;r゙ 在日の方々はかわいそうな強制連行の被害者
`Z;i 〈.,_..,. ノ;;;;;;;;>
,;ぇハ、 、_,.ー-、_',. ,f゙: Y;;f そんなふうに考えていた時期が
〜''戈ヽ `二´ r'´:::. `! 俺にもありました
159nobodyさん
2009/01/11(日) 18:25:25ID:??? 最近、個人的に面白いと思った言語仕様があるのだが、ここに書いてる時間が
ないし、書いても長くてウザがられそうなので、クイズにしてみる。
「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 が正しいかどうか、
問題があるとしたらどこか、考えてみよう。
ないし、書いても長くてウザがられそうなので、クイズにしてみる。
「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 が正しいかどうか、
問題があるとしたらどこか、考えてみよう。
161nobodyさん
2009/01/14(水) 18:06:09ID:??? 大垣センセがこんなとこくるわけないだろw
162nobodyさん
2009/01/14(水) 18:38:30ID:???163nobodyさん
2009/01/14(水) 18:53:26ID:??? つうか、PHPのリファレンスって、要するにインスタンスに別名をつけることで、
仕組み自体はきわめて単純なものなんだよな。他言語で一般に言われるリファ
レンスと似ても似つかないだけで(俺だったら「エイリアス」とか命名したと
思う)。
わかりにくいのは、なんでPHPはこんな、他言語にはない奇妙な仕組みを必要と
するかだ。PHPのリファレンスはいつ、どのようなときに必要なのか。それを理
解するには、PHPの変数と各種インスタンスの挙動を理解する必要がある。
>>159のクイズは、まさにその辺の問題を扱っている。まあちょっと再帰を絡ま
せてしまったんで分かりにくくなってしまったが、再帰は枝葉で、本題にした
いのはそっちだ。
仕組み自体はきわめて単純なものなんだよな。他言語で一般に言われるリファ
レンスと似ても似つかないだけで(俺だったら「エイリアス」とか命名したと
思う)。
わかりにくいのは、なんでPHPはこんな、他言語にはない奇妙な仕組みを必要と
するかだ。PHPのリファレンスはいつ、どのようなときに必要なのか。それを理
解するには、PHPの変数と各種インスタンスの挙動を理解する必要がある。
>>159のクイズは、まさにその辺の問題を扱っている。まあちょっと再帰を絡ま
せてしまったんで分かりにくくなってしまったが、再帰は枝葉で、本題にした
いのはそっちだ。
164nobodyさん
2009/01/14(水) 18:59:55ID:???165nobodyさん
2009/01/14(水) 19:05:36ID:??? 参照でおもしろいのは、引数を参照で受け取る関数で、
それがオブジェクトであることを期待してるのに、NULLだった場合とかに、
関数の中で何もしないのに、var_dumpすると再帰になるようなスクリプトで
別のメモリ領域にズレが生じるとか。
それがオブジェクトであることを期待してるのに、NULLだった場合とかに、
関数の中で何もしないのに、var_dumpすると再帰になるようなスクリプトで
別のメモリ領域にズレが生じるとか。
166nobodyさん
2009/01/14(水) 19:09:11ID:???167nobodyさん
2009/01/14(水) 19:13:09ID:??? 君見苦しいぞ
168nobodyさん
2009/01/14(水) 19:13:20ID:???171nobodyさん
2009/01/14(水) 22:04:23ID:??? 見苦しい人がちょっといたほうが盛り上がるよ
172nobodyさん
2009/01/14(水) 22:17:55ID:??? 盛り下がっちゃったわけだが
174nobodyさん
2009/02/08(日) 20:48:24ID:??? 緊急浮上あげ
175nobodyさん
2009/02/09(月) 02:15:47ID:??? 俺も大垣先生の本は分かりやすいと思った。
PHP6が出たら、改訂版の投入をお願いします!><
図書館で借りて読むけどw
PHP6が出たら、改訂版の投入をお願いします!><
図書館で借りて読むけどw
176nobodyさん
2009/02/09(月) 11:41:42ID:??? 本人乙
177nobodyさん
2009/02/09(月) 14:13:32ID:??? echo と print の厳密な違いを教えてください
178nobodyさん
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);
}
{
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);
}
180nobodyさん
2009/02/09(月) 20:49:46ID:??? そうなるとprintなんて必要ないよな
配布スクリプトなんか覗くとprint使ってるやつがいるので不思議でたまらない
配布スクリプトなんか覗くとprint使ってるやつがいるので不思議でたまらない
181nobodyさん
2009/02/09(月) 21:10:42ID:??? printは成功すると1を返す。
echoは何も返さない。
echoは何も返さない。
182nobodyさん
2009/02/09(月) 23:30:44ID:??? $a=1;
$a ? echo 'aaa' : echo 'bbb'; //error
$a ? print 'aaa' : print 'bbb'; //ok
$a ? echo 'aaa' : echo 'bbb'; //error
$a ? print 'aaa' : print 'bbb'; //ok
183nobodyさん
2009/02/10(火) 05:47:16ID:??? 三項演算子の場合普通式の先頭から書かないか?
184nobodyさん
2009/02/10(火) 06:33:49ID:??? 一例ってことで
185nobodyさん
2009/03/18(水) 11:34:00ID:??? システムハンガリアンって評判悪いじゃん。
たしかにC++みたいに型が違う値を代入しようとしたら
速攻でエラー吐くコンパイラにかけるんなら意味ないかと思うけど、
PHPみたいに元の型が何であろうが無視して新しい型にしてくれちゃう言語は、
ひるがえって『単なる型名を変数名につける』ってのが有効じゃないかと思うんだ。
PHPにおいてはアプリケーションハンガリアンよりシステムハンガリアンのほうがいい気がしてる。
ハンガリアンに限らず、PHPの柔軟すぎる型変換に適した命名規約を考えてくれ。
たしかにC++みたいに型が違う値を代入しようとしたら
速攻でエラー吐くコンパイラにかけるんなら意味ないかと思うけど、
PHPみたいに元の型が何であろうが無視して新しい型にしてくれちゃう言語は、
ひるがえって『単なる型名を変数名につける』ってのが有効じゃないかと思うんだ。
PHPにおいてはアプリケーションハンガリアンよりシステムハンガリアンのほうがいい気がしてる。
ハンガリアンに限らず、PHPの柔軟すぎる型変換に適した命名規約を考えてくれ。
186nobodyさん
2009/03/18(水) 11:34:45ID:??? そもそも、ハンガリアンが嫌われているのは
変数に実際に入れる型がいろいろ変わるからなわけだが。
>>185はバグ回避のために違う型を入れないようにするためと
いっているのだと思うが、間違った型を入れるとか言う以前に
ソフトウェアの性質上、型は変わるものなんだよ。
(変数に最初に想定していた型以外のものを入れることになる)
時代の流れとともに16bit変数は32bit変数に変わるし、
32bitポインタは64bitポインタに変わるし、
オブジェクト指向言語なら、型は継承され新しい型になる。
PHPのような柔軟な言語だからこそ、なおさらハンガリアンは必要ない。
それにハンガリアン(変数の頭に型を入れる)を使うまでもなく
変数名そのものが型をあらわしている。flagならtrue/falseだし、priceなら数値だろう。
変数に実際に入れる型がいろいろ変わるからなわけだが。
>>185はバグ回避のために違う型を入れないようにするためと
いっているのだと思うが、間違った型を入れるとか言う以前に
ソフトウェアの性質上、型は変わるものなんだよ。
(変数に最初に想定していた型以外のものを入れることになる)
時代の流れとともに16bit変数は32bit変数に変わるし、
32bitポインタは64bitポインタに変わるし、
オブジェクト指向言語なら、型は継承され新しい型になる。
PHPのような柔軟な言語だからこそ、なおさらハンガリアンは必要ない。
それにハンガリアン(変数の頭に型を入れる)を使うまでもなく
変数名そのものが型をあらわしている。flagならtrue/falseだし、priceなら数値だろう。
187nobodyさん
2009/03/18(水) 11:35:28ID:???188nobodyさん
2009/03/18(水) 11:35:53ID:??? 常識の範囲内ならどうでもいい。
つまりは、priceがlongからItemPriceに変わるというように
型が変わることがあるってこった。
それは避けられないからハンガリアンはよくない。
つまりは、priceがlongからItemPriceに変わるというように
型が変わることがあるってこった。
それは避けられないからハンガリアンはよくない。
189nobodyさん
2009/03/18(水) 11:36:32ID:??? クラスでゲッターやセッター使ってれば
タイプヒンティングも使えるし、型よりも値の範囲を絞って
例外を飛ばせるから全く問題ない。
一度処理に入ったら長い処理が行われるのではなくて
1回毎のシンプルな処理をセッションやクッキー使ってどうにか
継続させるのがWebアプリだから、ユーザー側のデータは
1回毎に改変が無いか毎回チェックする事になるし、型があってもなくても関係ない。
タイプヒンティングも使えるし、型よりも値の範囲を絞って
例外を飛ばせるから全く問題ない。
一度処理に入ったら長い処理が行われるのではなくて
1回毎のシンプルな処理をセッションやクッキー使ってどうにか
継続させるのがWebアプリだから、ユーザー側のデータは
1回毎に改変が無いか毎回チェックする事になるし、型があってもなくても関係ない。
190nobodyさん
2009/03/18(水) 23:00:28ID:???192◇N.OaZ1nFN2
2009/11/03(火) 12:55:24ID:??? テスト
193nobodyさん
2011/04/22(金) 23:18:04.56ID:itzBhGqM Mono最強伝説
http://ja.wikipedia.org/wiki/XSP_(Web%E3%82%B5%E3%83%BC%E3%83%90%E3%83%BC)
http://ja.wikipedia.org/wiki/XSP_(Web%E3%82%B5%E3%83%BC%E3%83%90%E3%83%BC)
194nobodyさん
2011/05/13(金) 03:48:00.01ID:??? システムハンガリアン病だわ・・・
HTMLでさえも<span id="spanHoge">とか<input type="text" name="txtHoge">とか
しないと気が済まない_| ̄|○
HTMLでさえも<span id="spanHoge">とか<input type="text" name="txtHoge">とか
しないと気が済まない_| ̄|○
195nobodyさん
2011/05/13(金) 03:59:57.23ID:??? それハンガリアンの意義から逸脱してるよなw
196nobodyさん
2011/05/13(金) 23:21:15.36ID:nIBGPhUJ そう? 意義とは?
197nobodyさん
2011/05/13(金) 23:30:39.71ID:??? 俺が立てたクソスレがまだあるとは思わなかった
ROUND2はなさそうだな
199nobodyさん
2017/12/30(土) 14:35:43.67ID:YhlYw6jg 誰でも簡単にネットで稼げる方法など
参考までに、
⇒ 『半藤のブブイウイウレレ』 というサイトで見ることができます。
グーグル検索⇒『半藤のブブイウイウレレ』
L32JIAVAJE
参考までに、
⇒ 『半藤のブブイウイウレレ』 というサイトで見ることができます。
グーグル検索⇒『半藤のブブイウイウレレ』
L32JIAVAJE
200nobodyさん
2023/09/22(金) 00:03:53.38ID:??? ウム(メ▼▼)y-i_(・o・ ;)オヤブンドウゾ!!
レスを投稿する
ニュース
- 【W杯】韓国警察、「洪明甫(ホン・ミョンボ)監督選任」関連でサッカー協会を捜査中…「積極的に進める」★3 [ホイミン★]
- 亀梨和也が田中みな実と結婚発表 妊娠も「新しい命も授かっています」ファンクラブサイトで ★5 [首都圏の虎★]
- ブラジル監督「日本戦は決勝のつもり」名将の最大級リスペクトにSNSで興奮殺到 ★2 [首都圏の虎★]
- “DeNAに最大15億円支援”など、経産省がXで説明 「大企業への利益提供ではない」⋯コナミ、スクエニ、セガなどにも [少考さん★]
- 「デュエルって何ですか?」 日本代表ブラジル戦へ 『サンモニ』膳場貴子アナがサッカー解説者に質問… 新しいサッカーの言葉 [冬月記者★]
- 【W杯】ブラジル監督「日本戦は決勝のつもり」名将の最大級リスペクトにSNSで興奮殺到 [首都圏の虎★]
- 【実況】博衣こよりのえちえち手描き切り抜き鑑賞🧪★2
- 食品消費税1%検討 「反対反対、そんな事したら誰も外食しなるだろ!」 👈こいつら正体。 [929852992]
- 【高市悲報】捕鯨業者「IWC脱退したら補助金貰えなくなって赤字になったので自己破産しまーす!」 [616817505]
- 【実況】博衣こよりのえちえち手描き切り抜き鑑賞🧪★3
- 【高市悲報】石油枯渇まであと157日 [616817505]
- 🦊Vtuber日本代表は不知火フレアだよな⚽…🏃 🏡