
No.1ベストアンサー
- 回答日時:
計算結果は、どちらも echo の次行では $a の中身は 11 です。
しかし、echo で出力される結果は前者は 10 、後者は 11 になります。
前者は $s の中身を出力した後に足し算が行われます。
後者は足し算を行った後に $a の中身を出力します。
<?php
$a = 10;
echo $a++,PHP_EOL;
echo $a,PHP_EOL;
$a = 10;
echo ++$a,PHP_EOL;
echo $a,PHP_EOL;
?>
で実験してみれば判るでしょう。
簡潔明瞭な御回答誠にありがとうございました。
http://www.php.net/manual/ja/language.operators. …
以上URLのhpと御回答を比較した場合
「地元との人が地元の地図を描くと土地勘のない人から見れば非常に分かり辛い」
以前聞いた話ですが・・それと同様は以下の説明です。
++$a前置加算子$a に 1 を加え、$a を返します。
$a++後置加算子$a を返し、$a に1を加えます。
以上説明は
”地元との人が地元の地図を描いた”と同様に思えるのは私だけでしょうか!?
普通読んでもなんことは分からないと思います。
御回答下さった内容は明瞭でした。URLのhpは分かり辛いので、できるのであれば
御回答を追加したいところですが^^
以下今後の参考、分かりやすいと思いますが
<html>
<head>
<meta "charset=utf-8" />
<title>加算子</title>
</head>
<body>
<?php
$a = 10;
echo $a++,PHP_EOL;
echo $a,PHP_EOL;
$a = 10;
echo ++$a,PHP_EOL;
echo $a,PHP_EOL;
?>
</body>
</html>
結果は以下です。
10 11 11 11
echo $a++,
前者は $s の中身を出力した後に足す
echo ++$a,
後者は足し算を行った後に $a の中身を出力
No.2
- 回答日時:
疑問に思ったら、人に聞く前に、まずはマニュアルを読みましょう。
PHPの勉強の前に「マニュアルの読み方」を覚えましょう。
マニュアルを読んで、なお、わからないことがあるのなら、その時点で質問しましょう。
人に聞いたものはすぐに忘れます。
自分で調べたことは覚えていられるものです。
「わからなければ聞けばいいや」という姿勢では、いつまで経っても習得はできません。
マニュアルの読み方で覚えておくべきことは「直接探せないときは、関連する項目から手繰る」ことです。
こういう記号は、検索してもうまく見つけることができません。
そこで、世間一般でこういう計算するものを何と呼ぶかを考えます。
算数では、こういう計算するようなものを「式」と読んでいますね?
そこでマニュアルから「式」について説明しているものが無いか探すと
『式』 http://www.php.net/manual/ja/language.expression …
が見つかります。
これを読んでいくと
> PHP と他の多くの言語のユーザーは、variable++ や variable-- といった表記法に慣れていることでしょう。
> これらは、加算子および減算子です
と探していた「++」についての説明がありました。
「加算子および減算子」の部分がリンクになっています。
『加算子/減算子』 http://www.php.net/manual/ja/language.operators. …
> ++$a 前置加算子 $a に 1 を加え、$a を返します。
> $a++ 後置加算子 $a を返し、$a に1を加えます。
と説明が書いてあります。その後にサンプルコードもあります。
また
> PHP は C 言語形式の加算子/減算子(前置・後置ともに)をサポートします。
とあります。元々C言語で使われていたものだとわかります。
ということは「C言語 加算子」で検索してC言語での解説を読む、というのも理解を深めるのに役立つだろう、と考えられます。
日本語でピンとくるものがなければ、英語で探しましょう。
コンピュータ用語は英語が基になっているものがほとんどです。
上記 PHP のマニュアルで言語を「 English」に変えると、「加算子/減算子」は「Incrementing/Decrementing Operators 」だとわかります。
「Incrementing」や「インクリメント」で検索すると、また違ったサイトを見つけることができます。
あとは、「実際にプログラムを動かしてみる」ことです。
今回の例なら、結果が違うことが一目瞭然です。
その結果を見て「なぜそうなるのですか?」という質問をするなら、まだマシです。
実行もしない、マニュアルで調べもしない、で質問して、回答が来るまで数日勉強が止まる、では、習得できるわけがありません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP PHP MySql ページング 2 2022/09/20 06:38
- PHP ランキングを表示する際の画像の大きさを固定することは可能でしょうか? <?php if ( has_ 1 2022/07/21 14:55
- PHP PHPで画像の渡しが上手く行きません。 1 2023/02/02 09:39
- PHP 共通の処理をまとめる方法がわからないのでアドバイスお願いします。 1 2022/12/19 20:20
- PHP アップロード画像数でCSSを分けることに成功したのですが、画像の横に文字を並べることが出来ません。 3 2023/07/28 17:16
- PHP PHP一覧表示した項目にリンクをはりたい 1 2023/07/12 17:08
- PHP htmlで複数の個数入力欄を表示させるには 1 2022/09/20 03:11
- PHP 掲示板を作成しておりアップロードファイルとメッセージを並べたいので、アドバイスお願い致します 2 2023/07/17 21:01
- HTML・CSS CSSが効かずどのように指定すれば良いか分からないのでアドバイスお願い致します 2 2023/06/07 12:25
- MySQL php テーブルを作れない 2 2022/11/17 18:22
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
バッチファイルでpingの結果を...
-
Dosブロンプトでtabを出力したい
-
PHPで訪問回数を表示するカウン...
-
findstrのerrorlevel
-
switch()文で値の大小比較
-
PHP form action 次のページ...
-
WindowsのイベントログをExcel...
-
phpで「+=」と「=+」の違いは?
-
echo $a++とecho ++$a,の違いは?
-
shシェルスクリプト 空白行の...
-
小数点以下0の非表示
-
PHPで値を表示する「echo」「pr...
-
「ページネーション」で検索キ...
-
Access グループごとのページ...
-
ブラウザを閉じた後もセッショ...
-
iTunesでのCDのトラック名取得...
-
外部ファイル(テキスト)を取...
-
コンビニで住民票を取得した場...
-
どういうプログラムを関数化を...
-
関数戻り値が連想配列の場合
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Dosブロンプトでtabを出力したい
-
バッチファイルでpingの結果を...
-
shシェルスクリプト 空白行の...
-
switch()文で値の大小比較
-
findstrのerrorlevel
-
小数点以下0の非表示
-
syntax error, unexpected 'ech...
-
pdftkを使った処理をバッチファ...
-
phpでcookieがうまく保存されない
-
コマンドプロンプト フォルダ内...
-
XMLのタグの有無をPHPで判定し...
-
ゼロとNULLを区別して number_f...
-
バッチファイルで、全てのウィ...
-
DBのハッシュ化したパスワード...
-
Windowsのsetコマンドでの小数...
-
オブジェクトの中身の判定(PHP)
-
bashの関数の引数にスペースが...
-
訪問回数で表示するFLASHを変える
-
batファイルでPC名称の変更
-
print と echo の違い
おすすめ情報