[過去ログ] 【PHP】下らねぇ質問はここに書き込みやがれ 14 (1002レス)
前次1-
抽出解除 必死チェッカー(本家) (べ) 自ID レス栞 あぼーん

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
752
(1): sage (ワッチョイ c963-e7li) 2023/10/14(土)23:13 ID:uhuB6VoQ0(1/3) AAS
>>751
既に回答されてる通りだよ。
ただの整理術だから、無くても困らないのなら問題ないし、規模が大きくなれば嫌でも実感出来る。
そして(生の)PHPで学ぶのははっきり言って間違い。
Arrayとか、他言語ならarr.indexOf等、最初からクラスになってるので自然と使えるようになる。
最初からlaravel使った場合も同様。
生のPHPで初心者の規模(3000行以下程度)なら自然と学べる事はなく、無理に使おうとしても余計に混乱するだけ。
省3
753: (ワッチョイ c963-e7li) 2023/10/14(土)23:15 ID:uhuB6VoQ0(2/3) AAS
> ユーザー定義関数との違いが理解出来ていない自分。
そもそも違いなんて無い。Goの場合は相互に運用出来るし、
C++やC#の場合はコンパイラが暗黙的に指定してくれるだけ。
一般的には「どう考えても対象を指定するしかないだろ」の場合、インスタンスメソッドにする。
例えば、
$key = array_search('green', $array); // $key = 2;
array_searchは「配列の中から探す」のであって「配列」を指定しないと話にならない。なら最初から、
省8
754: (ワッチョイ c963-e7li) 2023/10/14(土)23:16 ID:uhuB6VoQ0(3/3) AAS
ただしPHPのも「静的メソッド」として実装する方式では合ってるし、
実際にC++の場合は(仮想関数でない場合は)静的メソッドをコンパイラ支援で呼び出してるから、バイナリ的にも同じ。
同様にC#の場合は上記静的メソッドarray_searchを拡張メソッドとして$array->search形式で
見た目簡単に書けるようにしただけで、C++と同様に同じバイナリを呼び出す。
Goの場合はインスタンスメソッドを静的メソッドとして呼びだしたら(逆だったかも?)
第一引数がthis扱いになるだけ、という、C++やC#がコンパイラにやらせてるのをユーザーも書けるようにしただけ。
要するに、普通の関数(静的メソッド)と(仮想関数でない)インスタンスメソッドには違いはない。楽に書けるだけ。
省6
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.029s