トップページtech
981コメント306KB

PHPがいかに駄目言語であるかをちゃんと説明

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん2013/11/15(金) 20:57:08.46
age推奨で

他の言語と比較しながら、具体的にちゃんと説明してください!
0102デフォルトの名無しさん2013/12/08(日) 10:59:10.72
インスタンスのメソッドから呼び出したstaticメソッドの中で$thisが使えて呼び出し元のインスタンスを示すお馬鹿
0103デフォルトの名無しさん2013/12/09(月) 13:32:36.51
>>102
NULL
0104デフォルトの名無しさん2013/12/15(日) 02:06:12.63
今日始めたけど
ApacheとPHPの環境設定が全然うまくいかなくて
さっきXAMPPってのを知ってようやく使えるようになった。
でもdate関数使ったら時刻はずれるし(php.iniでAsia/ときょ にしたのに!)
2013年が20136と表示されるし
なんなんやこの言語は!
0105デフォルトの名無しさん2013/12/15(日) 15:06:29.97
それはさすがにお前が糞
0106デフォルトの名無しさん2013/12/16(月) 20:16:27.19
Web専門のバカでも出来る枠の言語のハズだよな?
先発の言語を駆逐できないのは、技術者の問題や、保守もあるから仕方ないんだが…
Web専門外の言語の後発フレームワークと比べられるのは流石にヤバい流れだと思う
0107デフォルトの名無しさん2013/12/16(月) 21:04:16.10
バカでもできる言語である必要ないから後発に譲るよ
0108デフォルトの名無しさん2013/12/19(木) 23:16:56.89
バカでもわかるシンプルな設計が最良で、
RFCの仕様がそこらじゅうに見えるPHPがWebにおいて
最良の選択肢なんだって思い知らされた
0109デフォルトの名無しさん2013/12/19(木) 23:43:37.58
そうか?他汎用言語のトレンド吸い上げて随分複雑化した印象だけどな
例えて言うなら水周りが貧弱なまま建て増し繰り返したオンボロ物件

RFCが見えるってのもよくわからん
言語問わずRFCに素直な実装したライブラリが整ってれば良い訳で、何が優れてる訳でもなかろ
0110デフォルトの名無しさん2013/12/20(金) 00:00:50.41
header(),md5(),$_SESSION[],$_COOKIE[]
この辺が好き。
0111デフォルトの名無しさん2013/12/20(金) 00:03:25.27
Java、C#やRoRが裏側で何をやっているのか見えない。
0112デフォルトの名無しさん2013/12/20(金) 00:54:22.62
それらと比べるならcakeやZFでは。それだとphpも事情変わらんような
0113デフォルトの名無しさん2013/12/20(金) 01:32:46.59
>>109
PHPとRubyはそう言われるな
0114デフォルトの名無しさん2013/12/22(日) 06:11:50.97
>>112
骨組みの見えるバギーやレシプロ機ぐらいイケてる
0115デフォルトの名無しさん2013/12/28(土) 13:20:15.52
Cakeの本がわからん
いきなりbakeなんか使わせるなよ!
0116デフォルトの名無しさん2013/12/28(土) 13:25:13.64
>>114
かっこいい!
0117デフォルトの名無しさん2013/12/28(土) 13:37:21.23
>>5

PHPがダメ言語な理由

* 配列ごときで、arrayの荒らし → PHP5.4から[1,2,3]と書けます
* クロージャーがない → PHP5.3で実装されました
* mixinがない → トレイと使えばおk

はい、論破
0118デフォルトの名無しさん2013/12/28(土) 13:38:46.23
今のPHP界はLaravelが通
CakePHPは古い人が使うFW
Zend Frameworkは見栄を張ってるバカが使うFW
0119デフォルトの名無しさん2013/12/28(土) 14:37:31.68
しばらく業務で使ってなかったけどLaravel初耳。フレームワークの世代交代が早いのはいいことなのかどうかって話もあるだろうけどね

ZFはすでに俺俺フレームワーク作っちゃって運用中の職場で、追加ライブラリとして組み込んだりするのには重宝したよ
スレ覗いたら下火感が漂って寂しい限りだが
0120デフォルトの名無しさん2013/12/28(土) 18:51:02.16
Laravelいいよ。日本だと知名度低いけどね
PhalconPHPが最近のおもちゃ

Zend Frameworkが見栄ってのはいまいち理解できない
フルスタックフレームワークとしては終わってるね

CakePHPはオフショアとか下請け専用状態やな
0121デフォルトの名無しさん2013/12/28(土) 18:57:12.98
Laravelが素晴らしいのは母体に実績のあるSymfonyを使ってるから
0122デフォルトの名無しさん2013/12/28(土) 19:00:17.57
個人で使うんだったらどのFWがいい?
0123デフォルトの名無しさん2013/12/28(土) 19:03:36.99
CodeIgniter
0124デフォルトの名無しさん2013/12/29(日) 10:25:37.60
外注向け
CakePHP、Symfony

個人・少人数開発向け
CodeIgniter、Laravel

CodeIgniterはライセンス問題で海外では終わってる
その点を調べてから使うべし
0125デフォルトの名無しさん2013/12/30(月) 17:28:17.28
FuelPHPのほうがいいのでは
0126デフォルトの名無しさん2013/12/30(月) 18:16:13.98
CodeIgniterのライセンスで騒いでるのは無知だけ
0127デフォルトの名無しさん2013/12/30(月) 23:13:59.93
Cakeで途中からMySQLのテーブルに列を増やしたんだがクエリがそれに追随して増えてくれん
そりゃ、$this->query()で直接書けばいいんだが、fetchなんかが増えた列に対応してくれん、、、
どこをなおせばいいんだ?
Model/*phpでdisplay属性に追加すればいいのか?
0128デフォルトの名無しさん2013/12/31(火) 10:58:09.40
>>127
http://kohada.2ch.net/test/read.cgi/php/1378659370/
0129デフォルトの名無しさん2013/12/31(火) 11:31:39.62
FuelPHPはもう終わったろ

CodeIgniterのライセンスは厳密には問題ないんだ
けどさ途中でライセンスが変わったプロダクトは好まれない
OSLとAFLを理解するのも難しいのも痛い

Yiiもオススメ
0130デフォルトの名無しさん2014/01/02(木) 03:35:57.15
FuelPHP2モダンでいい感じじゃん
イマイチ人気でないけど
0131デフォルトの名無しさん2014/01/02(木) 03:51:33.34
フレームワーク語るスレ的な流れだよな
スレタイ関係ないやんかどないなっとんねんな
ごめんなさい話題触れないのに煽んなって話すよねすみません話題降ります

2014年もPHP安泰っすかねセンパイ!!
ねえ!
ねえ…。
0132デフォルトの名無しさん2014/01/02(木) 09:50:50.06
FuelPHP2完成してないでしょ

FuelPHPは終わったというより、スタートに立ってない
メジャーバージョンアップで互換性がなくなりそうなの見えてるのに
誰も使えない

もてはやしてるの日本の一部の人だけ
0133デフォルトの名無しさん2014/01/04(土) 15:49:55.33
すみませんPHP初心者です、これ動かないんですが何が悪いですか??
http://i.imgur.com/hmfbhY1.jpg
0134デフォルトの名無しさん2014/01/04(土) 16:02:03.01
>>133
WebProg板の適切なスレに行って聞いてくれ
その際「どう動かないのか」も添えるようにね
0135デフォルトの名無しさん2014/01/04(土) 16:06:17.87
了解しましたm(._.)m
0136デフォルトの名無しさん2014/01/05(日) 13:28:27.56
phpって言語ってよりテキストツールみたいなもんだと思ってる
Awkやsedみたいな
0137デフォルトの名無しさん2014/01/05(日) 18:48:03.92
>>136
というか最初は実際にPerlで書かれたツールだった。
色々やってく内に言語になっちゃったんだとか。

ただ、テキストツール…っつーと何となくしっくりこないな。
だってPerlの時点でテキストツールだもの。
Web特化ツール、って感じじゃね?
0138デフォルトの名無しさん2014/01/05(日) 21:01:14.38
本のサンプルコード自分で入力して書いたんだが、エラーの箇所がわからん・・・
0139デフォルトの名無しさん2014/01/05(日) 21:07:10.19
>>138
エラーの箇所がわからないんだったら
エラーじゃないんだよ
01401382014/01/05(日) 23:39:39.43
ブラウザで「**の**行目」ってでて入るんだけど、原因は全然別の所のタイプミス、とか
Cakeを使ってるんだけどバグの原因がよー分からん場面が多くてつらい
0141デフォルトの名無しさん2014/01/06(月) 01:08:48.14
>>140
タイプミスはバグではないよ。
それはただのミスでしかない。

まあ、サンプルなんか見ないで
コードを書けるようになったらわかると思うけどね。
0142デフォルトの名無しさん2014/01/06(月) 02:10:20.88
バグは、一番上のバグから解決すべし

それより下のバグは、
連鎖的にバグとみなされているだけで、
一番上のバグを解決すると、自然と直ることが多い
0143デフォルトの名無しさん2014/01/06(月) 05:44:36.03
エラーの提示ってあんまり進歩しないものなのかね
Cあたりと全然変わってないやん
0144デフォルトの名無しさん2014/01/06(月) 05:52:37.04
>>141
0145デフォルトの名無しさん2014/01/06(月) 08:44:50.15
>>144
プログラムを書いたことないトロールだろ
0146デフォルトの名無しさん2014/01/06(月) 09:04:00.55
>>143
むしろ退化する
シンタックスシュガーみたいな本質的に無駄な要素を滅ぼせ
0147デフォルトの名無しさん2014/01/08(水) 01:21:05.57
オサレ系言語は嫌いじゃ
見せかけでドヤ顔したいだけ
0148デフォルトの名無しさん2014/01/08(水) 01:30:03.71
いやphpなんて別におされでもないやろ
ハスケルとかおされ
流行りかつ媚びてない裏原っぽさがある
思想分かってない半可通は一瞬で界隈の奴らに見抜かれる
俺とか見抜かれる側の典型
二度と行かねえよあんな店。服の話してんのに何が間接照明だボケが
0149デフォルトの名無しさん2014/01/08(水) 01:31:14.14
>>148
あ、いやphpじゃなくて
シンタックスシュガードヤ顔系言語のことね
0150デフォルトの名無しさん2014/01/08(水) 01:32:34.76
>>149
取り乱しました
把握同意
0151デフォルトの名無しさん2014/01/08(水) 14:45:12.52
・値の比較、評価がわかりずらい
・関数の名前や引数がキモい、グローバルにすんな、オブジェクトにしろよ
・信じられない脆弱性やバグが割と最近まであるせいで怖い

5.4までは知ってるがこんなもんか

c,c++,ruby,js,objc…、PHPどころの騒ぎじゃない糞言語や時代遅れ言語も結構あるのでPHPは不当に叩かれすぎてる感が
0152デフォルトの名無しさん2014/01/08(水) 15:34:20.40
===の使用を徹底する
いつも同じキー名をとる複雑な配列はさっさとクラスにしてタイプヒンディングを使う

とかしてると、だんだんphpらしさは無くなります(いいかどうかは別)
0153デフォルトの名無しさん2014/01/08(水) 16:11:51.66
phpらしいって、それ褒め言葉?
0154デフォルトの名無しさん2014/01/08(水) 16:25:56.74
"自分が思う"phpらしさ
だろ
0155デフォルトの名無しさん2014/01/08(水) 16:38:38.45
array(
array(
array(
)
)
)

PHPらしさ
0156デフォルトの名無しさん2014/01/08(水) 17:52:05.29
>>155
[[[]]]
0157デフォルトの名無しさん2014/01/08(水) 20:34:16.19
>>151
その5つの言語を根拠もなく糞とか言ってる時点で説得力ないでーす
0158デフォルトの名無しさん2014/01/08(水) 20:53:01.04
いまだにXSSに言及がないチュートリアルが公開されるところ
0159デフォルトの名無しさん2014/01/08(水) 22:41:08.32
初期の頃は機能不足だったり、ライブラリが貧弱だったりしたが、今はもう特別見劣りしないと思う
デザイナー上がりのプログラマーがいたり、ユーザーレベルの平均値は他の言語に比べて低いけど、それは仕方ないだろ
スクリプト言語なんか、どれも似たようなもので、大差ない
0160デフォルトの名無しさん2014/01/08(水) 22:56:16.24
雑魚でも使えるってすごいことだよな
たとえそれが悪貨だとしても、雑魚向けの代替環境が鯖屋に普及してないしな

node.jsとかもうちょい雑魚向けにプッシュしていけないもんかね
ターゲット違うんだろうけどさ
01611382014/01/09(木) 00:12:22.39
arrayでLISPの真似事みたいにするのはやめて
0162デフォルトの名無しさん2014/01/09(木) 01:15:29.86
>>160
c++とPHPって、どっちが優れた道具なんだ?
LISPがそんなにすごいなら、
0163デフォルトの名無しさん2014/01/09(木) 08:31:51.40
LISPの真似事ってなんだ
0164デフォルトの名無しさん2014/01/09(木) 10:26:30.88
PHPは最新バージョンでもまだ醜い設計なの?

Webに使えるスクリプト言語で一番ましなのはPython?

>>162
用途がまったく違うの比較してどうする
C++ないと成り立たないアプリケーションは膨大にあるが
PHPでないと成り立たないものなどない
0165デフォルトの名無しさん2014/01/09(木) 10:30:17.01
酷い設計ってなんだ

pythonは無駄が少ない比較的綺麗な言語だとは思う
0166デフォルトの名無しさん2014/01/09(木) 10:31:20.91
>>164
PHPでないと成り立たないものはないが
C++でないと成り立たないものもない
0167デフォルトの名無しさん2014/01/09(木) 12:07:22.50
>>165
文字通りだよ。
PHPはスクリプト言語としての優秀さ、醜さはどうなのか?ということ
Pythonはインデントが気持ち悪くてとっつきにくい

>>166
何言ってるんだお前は
スクリプト言語しかしらない低能だろ

PHPはWeb専用の言語といっていいし
PHPで動いてるサイトなんて他のスクリプト言語で簡単に代替、移植できる。

一方、C/C++は世の中に不可欠な言語だ。
OSやミドルウェアなど重要なアプリケーションの多くがC++に依存しているし
世の中の膨大なアプリも、C++のランタイムに依存している。
0168デフォルトの名無しさん2014/01/09(木) 12:55:23.08
>>166
プロフェッショナルしか使えないと道具と誰でも使える道具って意味で比較したんだけど
0169デフォルトの名無しさん2014/01/09(木) 12:58:20.01
c++について学び、イディオムについて学び、己の限界を知ったあたりで
全てがバカバカしくなってくる言語。それがc++。
0170デフォルトの名無しさん2014/01/09(木) 13:08:30.22
>>167
低能とはよく言ったものだ
C++が代用不可能な理由を説明してもらおうか

依存関係なんてPHPですらある
依存先を変えれば、または別言語で書き直せばどんなものでも代用可能
0171デフォルトの名無しさん2014/01/09(木) 13:15:09.69
PHP自体がC++やCに依存しているが
Javaでも書かれてるしC++がないと成り立たないとはいえない

PHPのPHP実装もあるからな
0172デフォルトの名無しさん2014/01/09(木) 13:17:31.48
PHP本体にc++で書かれた部分なんてあったっけ?
0173デフォルトの名無しさん2014/01/09(木) 13:35:16.12
>>172
本体の範囲にもよるが、バンドルされてるExtensionにはC++がある
本体自体にはないかな
0174デフォルトの名無しさん2014/01/09(木) 13:36:19.05
よし、Lispマシン作ろうぜ。
0175デフォルトの名無しさん2014/01/09(木) 19:06:18.58
>>170
低能は不適切だった
あんたは無能だったようだ

一番したのレイヤーのOSがC/C++に依存している
C/C++を代替できる言語は今はない

>>171
>PHPのPHP実装もあるからな
それ遅いだろ、存在価値がない
さらにいうとアプリケーションサーバもC/C++に依存している。
PHPで書かれたコードだけでWebサービスは動かない

>Javaでも書かれてるしC++がないと成り立たないとはいえない
JavaはC/C++に依存してるんだが
おまえらバカすぎる
0176デフォルトの名無しさん2014/01/09(木) 19:11:22.16
>>175
あとからC足すなよ

はぁ
0177デフォルトの名無しさん2014/01/09(木) 19:33:25.25
>>175
JavaがC/C++に依存ってなんのこと?
C/C++で書かれてるの?
0178デフォルトの名無しさん2014/01/09(木) 19:54:43.54
>>177
JavaのバイトコードはJava Virtual Machine上で動く
Java VMはC/C++で書かれている
だからJavaはC/C++に依存している。
0179デフォルトの名無しさん2014/01/09(木) 23:59:40.04
>>178
Oracleのメインのやつはな
0180デフォルトの名無しさん2014/01/12(日) 06:32:41.50
まあC/C++は頑張り過ぎで、そろそろ引退させてやれよとは思う
Dちゃんが、もう少ししっかりしてくれたら…ってのもあるけどなw
0181デフォルトの名無しさん2014/01/12(日) 07:49:03.67
Cちゃんはこの先10年は現役でしょうなぁ
01821382014/01/12(日) 19:48:06.64
C++はがんばりすぎw
正直、ついていけてる奴なんているのか?最新の改版に
gccでも全機能は対応出来てねーだろ、たしか
0183デフォルトの名無しさん2014/01/12(日) 20:32:22.64
コンパイラ屋すら全機能の実装に必死なんて、もはや何かのジョークだろ
0184デフォルトの名無しさん2014/01/12(日) 21:26:06.29
c++11全対応にclangが一番乗りできたってニュースが去年だしな
で、今c++14策定中?なんだかなあ
0185デフォルトの名無しさん2014/01/12(日) 21:48:35.95
これだからC++は嫌いだ
0186デフォルトの名無しさん2014/01/12(日) 21:59:28.80
なんかc++のスレになってきたな。
実装が大変という意味だとphpの最新版も結構当てはまると思うけど、hhvmってどの辺りまでサポートしてるんだろ。
0187デフォルトの名無しさん2014/01/14(火) 22:22:45.53
初心者が学ぶのに最適な5つのプログラミング言語
http://news.livedoor.com/article/detail/8425886/

Java, Python, Ruby, C/C++, JavaScriptがランクイン
PHPは圏外だ。

C/C++は同意しかねる。初心者にはハードルが高すぎるよ

Web appならPythonかRubyから始めろってことだね
Windows appならC#一択
0188デフォルトの名無しさん2014/01/14(火) 23:36:01.10
なんかもうjavascriptがぶっちぎりのウンコすぎて、あとは大体なんでもいいや
0189デフォルトの名無しさん2014/01/14(火) 23:40:15.69
>>187
PHPはむしろ初心者は使うべからずと啓発すべき言語。
Cはポインタ、バッファオーバーフローなど無視してCUIのみで基本構文の学習用なら問題ないと思うが、それならRubyやPythonでもいいか。
0190デフォルトの名無しさん2014/01/15(水) 01:25:23.27
Java一番で2番Rubyってありえねぇっと思ったら

Python 34.16%
C/C++ 23.29%
Java 17.63%
JavaScript 16.53%
Ruby 8.39%

かよ、Top4でいい数値

PHPは初心者がやってはいけない言語なのは間違いなし
0191デフォルトの名無しさん2014/01/15(水) 02:07:59.81
最初は静的型付けから始めた方がいいわ
jsもphpも気を抜くと酷いことになる
LLでもポインタは避けては通れなくなる時がくるし、
やっぱjavaだな、javaやっとこう
0192デフォルトの名無しさん2014/01/15(水) 02:26:23.32
>>189
CUIだとつまらなすぎてやる気が出ないよ

>>190
その数字どこに書いてある?

>>191
ポインタ必須の時代なんてもうこないよ
GCもついてるのが当たり前になってきてる
手動でメモリ管理する時代じゃない

1行目は同意する。
最初はC#とVisual Studioでwindows app開発がいい
web appはセキュリティとか学ばないといけないし初心者にはたいへん
0193デフォルトの名無しさん2014/01/15(水) 13:41:26.01
>>192
http://lifehacker.com/five-best-programming-languages-for-first-time-learners-1494256243

よくよく見たら5言語で100%だった。ってことは〜
0194デフォルトの名無しさん2014/01/15(水) 14:55:11.14
Firstly I'd ask myself why do I want to learn a programming language?
The preferred language to start might be different depending on the answer.

Still, I'd say PHP is the worst language to learn for a beginner because it does not reinforce any good practices.
What I mean by that is that it's very easy to learn to write messy and unreadable code
which is the single most important thing to learn if you intend to write code professionally.
This can be hard to unlearn later on. Same thing goes for Javascript IMHO.

Personally I'd recommend starting with some sort of object-oriented language.
It has the benefit of teaching a new programmer the importance of separating your code
into logical parts and keeping clear boundaries between separate functionality.
Technical knowledge is second to that and can come later.
I know both JS and PHP allow for object-oriented programming but they don't reinforce it.

I'd also not start with a scripting language
since it doesn't teach you too well about coherency and what actually makes a computer program.

Unfortunately 'big' languages take a bit more work
to see some effects of your effort which might be initially discouraging...
1/05/14 11:01am
0195デフォルトの名無しさん2014/01/15(水) 15:06:40.16
>>193
その他全てを足しても0%という目を背けたくなる現実
0196デフォルトの名無しさん2014/01/15(水) 15:18:03.31
JavaScriptは単体ならいいと思うけど、HTML、DOM、CSSも一緒にやろうとすると、覚えること結構あるよね
あと、ブラウザの実装具合のせいでやろうとしてることが出来なかった時にはまりそう
0197デフォルトの名無しさん2014/01/15(水) 15:18:40.54
PHPって子供向け、初心者向けの言語だろwwww
HSP的な立場wwwwww
そりゃあゴミよ
0198デフォルトの名無しさん2014/01/15(水) 15:22:33.69
PHPでいいや。
0199デフォルトの名無しさん2014/01/15(水) 15:24:42.55
そもそも、Web開発にはPHP以外に選択肢がないし、
だいたい皆、c/c++の本物の技術者になるのを諦めてぺちぱーになる
だから、おまえらも同じように苦労しろの精神
0200デフォルトの名無しさん2014/01/15(水) 15:32:43.56
「PHPでいいや。」にならなかった人たちはRubyistになります。
ブラッドピットのようなカリスマ革命家に救いを求めたのがRubyistたち。
いつの時代にもいる社会への反逆者。自らの運命に逆らい続ける。それがRubyist。
0201デフォルトの名無しさん2014/01/15(水) 15:33:00.75
>>199
> そもそも、Web開発にはPHP以外に選択肢がないし、
Java, Rubyもあるで
Perl, Python使う奴もいるし
■ このスレッドは過去ログ倉庫に格納されています