20/10/23(金)00:19:41 PHP8で... のスレッド詳細
削除依頼やバグ報告は メールフォーム にお願いします。個人情報、名誉毀損、侵害等については積極的に削除しますので、 メールフォーム より該当URLをご連絡いただけると助かります。
画像ファイル名:1603379981117.jpg 20/10/23(金)00:19:41 No.739347427
PHP8でとても直感的になる
1 20/10/23(金)00:21:02 No.739347874
fooは何者なの
2 20/10/23(金)00:21:34 No.739348060
>fooは何者なの bar
3 20/10/23(金)00:22:17 No.739348330
いやぁぁ…
4 20/10/23(金)00:22:58 No.739348564
PHPこんなんだったの…こわ…
5 20/10/23(金)00:30:32 No.739350985
どうしてこうなるの?
6 20/10/23(金)00:31:37 No.739351321
>fooは何者なの hoge
7 20/10/23(金)00:32:51 No.739351756
全部falseでは…?
8 20/10/23(金)00:34:32 No.739352299
最初から厳密等価演算子を使えばいいのでは?
9 20/10/23(金)00:35:05 No.739352481
直感的になっても全部falseにしか見えねえ
10 20/10/23(金)00:36:25 No.739352916
いっぽうjavascriptは===演算子を使った
11 20/10/23(金)00:37:12 No.739353187
上2二つも同じ扱いなのわからないし 3つ目以降まるで意味不明
12 20/10/23(金)00:37:37 No.739353321
なんでこうなるのかさっぱりわからん
13 20/10/23(金)00:38:18 No.739353537
jsも1 == "1"なるしお手元のブラウザで確認してみよう
14 20/10/23(金)00:39:07 No.739353843
マジで勘弁してくれ…
15 20/10/23(金)00:39:45 No.739354043
PHP触ったことないんだけど型の概念ないの?
16 20/10/23(金)00:39:57 No.739354130
trueにもfalseにもするな 数値型と文字列型の比較は無条件で例外投げるようにしろ
17 20/10/23(金)00:40:59 No.739354459
>PHP触ったことないんだけど型の概念ないの? もちろんあるよ C言語やPythonと違ってその場の文脈で暗黙的に変換してくれるからすごく便利だよ
18 20/10/23(金)00:41:33 No.739354652
0=="0"はまあawk以来の伝統ということで許すが…他はちょっと…
19 20/10/23(金)00:41:40 No.739354692
立ち止まるなどんな型変換してでも動き続けろというのが この手の言語ですし…
20 20/10/23(金)00:43:52 No.739355365
>C言語やPythonと違ってその場の文脈で暗黙的に変換してくれるからすごく便利だよ え…こわ…
21 20/10/23(金)00:44:48 No.739355664
>C言語やPythonと違ってその場の文脈で暗黙的に変換してくれるからすごく便利だよ バグの温床になりそうだしやった事ないけどPHPコードのレビューした時に本当にこれでいいのぉ~って凄い声が飛んできそう
22 20/10/23(金)00:46:43 No.739356250
0 == "foo"がなんでtrueになるのかだけでも教えてほしい…
23 20/10/23(金)00:47:17 No.739356414
整数と文字列の比較はシンタックスエラーにしろ
24 20/10/23(金)00:48:28 No.739356759
>C言語やPythonと違ってその場の文脈で暗黙的に変換してくれるからすごく便利だよ BASICかよ
25 20/10/23(金)00:48:45 No.739356841
>0 == "foo"がなんでtrueになるのかだけでも教えてほしい… 42=="42foo" を見るに数値として解釈できるところまではするってのがあって それとは別に空文字列は0とみなすってのがあって 二つ合わせて"42foo" → "" → 0 って感じだろうか…
26 20/10/23(金)00:51:33 No.739357654
正直いうとC言語のifの条件式で数値型なんでも受け付けて0以外だとtrueで0だとfalseになるのもすごく苦手なんだ
27 20/10/23(金)00:55:01 No.739358730
>42=="42foo" を見るに数値として解釈できるところまではするってのがあって >それとは別に空文字列は0とみなすってのがあって >二つ合わせて"42foo" → "" → 0 って感じだろうか… 文字列から数字以外を取り除いて数値にキャストするって感じか…
28 20/10/23(金)00:56:25 No.739359169
jsもこういうの楽しいよ
29 20/10/23(金)00:58:27 No.739359783
でも10行以内のプログラム作るときには便利でしょ?
30 20/10/23(金)01:03:49 No.739361257
謎はすべて解けた! 文字列を単にatoi()して比較してるだけだこれ!
31 20/10/23(金)01:06:32 No.739361948
>0 == "foo"がなんでtrueになるのかだけでも教えてほしい… fooに数字がないだろ?なんとなく0だろ?
32 20/10/23(金)01:06:43 No.739362002
>いっぽうjavascriptは===演算子を使った phpもあるんじゃなかったっけ?
33 20/10/23(金)01:07:41 No.739362245
数字の入ってない文字列は0ってこと?
34 20/10/23(金)01:10:24 No.739362830
数字と文字列比較してるのが悪いみたいな所あると思う
35 20/10/23(金)01:11:32 No.739363104
" 42"がtrueになってもええんか…
36 20/10/23(金)01:11:42 No.739363144
文字列を整数型に変換できる言語では空文字は0と判定されることが多いからそこは不思議じゃない 勝手にやってくれるのは迷惑だけど
37 20/10/23(金)01:13:40 No.739363586
暗黙の変換こわい…
38 20/10/23(金)01:14:25 No.739363751
そこらへんの癖を知ってれば快適に書けるから結構好き
39 20/10/23(金)01:15:34 No.739364011
>そこらへんの癖を知ってれば快適に書けるから結構好き 知ってる人にはそうなんだ 問題は「知らない人に対してエラーが出ない」ことなんだ…
40 20/10/23(金)01:17:02 No.739364318
>" 42"がtrueになってもええんか… 人生・宇宙・すべての答えがfalseだったら悲しいからな…
41 20/10/23(金)01:18:21 No.739364664
jsはvarが滅びた letってなに…?
42 20/10/23(金)01:19:06 No.739364871
型安全に親でも殺されたのか
43 20/10/23(金)01:20:40 No.739365267
C言語の書き方でLLだけど型が厳密なCscriptみたいのはないのかしら?
44 20/10/23(金)01:20:56 No.739365322
nullsafeな言語を使いましょう
45 20/10/23(金)01:21:29 No.739365446
>letってなに…? 代入し直せる!
46 20/10/23(金)01:23:02 No.739365808
>>" 42"がtrueになってもええんか… >人生・宇宙・すべての答えがfalseだったら悲しいからな… 誰も幸せになれないtrue…
47 20/10/23(金)01:23:16 No.739365865
>jsはvarが滅びた >letってなに…? var foo = 1; let bar = 2; { var foo = 10; let bar = 20; } console.log(foo); // 10と表示 console.log(bar); // 2と表示 みたいな
48 20/10/23(金)01:24:51 No.739366242
>みたいな varってスコープの概念なかったんだ…
49 20/10/23(金)01:25:05 No.739366295
const使って