75993
初学者です。  
入門用テキストや、PHPの公式サイトを参照すると  
以下のような解説があります。例えば printf関数について見てみると以下のような事が  
他の関数等を調べても出てきます。あまり気にしていいなかったのですがそういう訳にも  
行きません。

```

    printf ( string $format , mixed ...$values ) : int
    
```

この場合、string は「文字列」、$formatは「書式文字列」, mixedは型は「数値、文字列、浮動小数点など何でもいい」,
...$values引数の値 という解釈でいいのでしょうか？

```

    int printf( string $format [, mixed $args [, ・・・]])
    
```

こちらも同じ意味かと思います。 **①** ただ[]をつけている意味が判然としません。「ない場合はなくても良い」というような意味なのでしょうか？

**②** またHP公式サイト、入門用テキストの両方とも int がついています。これは戻り値のことかと思います。  
自分の中では「 (int) (integer). 整数型への変換」としか解釈出来ません。  
しかし、下に記述しているPHPでは返ってくるのは文字列、浮動小数点です。  
色々ウェブサイトを探していると、「［1］を表す」というようなのを見かけたのですが何のことかわかりません。

①[]がついている意味について  
②int の意味について

上記2点初学者でもわかるように教えていただけないでしょうか？  
よろしくお願いいたします

* * *

printf — フォーマット済みの文字列を出力する  
(PHP 4, PHP 5, PHP 7, PHP 8)

```

    printf ( string $format , mixed ...$values ) : int
    
```

## (PHP公式) <https://www.php.net/manual/ja/function.printf.php>

構文 printf関数

```

    int printf( string $format [, mixed $args [, ・・・]])
    
```

(独習PHP第3版)

* * *

＜記述＞

```

    <?php
    
    printf('%sは%sです。','きなこ','ハムスター');
    
    echo "<br>\n";
    
    printf("売上平均(前月比): %+0-8.3f",  0.198765);
    
    ?>
    
```

＜表示結果＞

きなこはハムスターです。  
売上平均(前月比): +0.19900
CC BY-SA 4.0
2021-05-21T04:41:39.300
75991
2021-05-21T05:03:55.427
42150
question
php
PHP　構文？　の読み方について教えてください
* `[ ]` については「省略可能なパラメータ」という認識で大丈夫でしょう。PHP に限らず他の言語でも使われる記法です。

  * 末尾の `int` についても「関数の返り値」を表しています。

なお、非常にざっくりとした説明しかありませんが、参照しているマニュアルサイトにも「読み方」のページが一応は用意されているので、こちらにも目を通してみてください。  
(大抵のマニュアルには目次等と共に読み方ページも含まれています)

[関数の定義(プロトタイプ)を読むには](https://www.php.net/manual/ja/about.prototypes.php)
CC BY-SA 4.0
2021-05-21T05:03:55.427
75993
2021-05-21T05:03:55.427
3060
75991
answer