substrを”.(ドット)”でできるのはなぜでしょうか?
|

PHPの組み込み関数であるsubstrについて質問があります。 ご存知の方がいらっしゃいましたらご教示願います。
質問の主旨
substrを”.(ドット)”で連結できるのはなぜでしょうか?
質問の補足
補足その1
下記のコードにおいて、$alp_b_shiftは型が”string”になります。
<?php $alp_b = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; $alp_b_shift = substr($alp_b, 3).substr($alp_b, 0, 3); $data = gettype($alp_b_shift); echo $data; ?>
ただその前にsubstrという組み込み関数が2回使われています。 subtrは型として文字列を返すことになっていますが、 オブジェクトのプロパティやメソッドのように、”.(ドット)”で 連結できるのはなぜでしょうか?
補足その2
上記のコードはこの本を参考にしています。 → いまどきのアルゴリズムを使いこなす PHPプログラミング開発テクニック(新しいタブで開く)
以上、よろしくお願い申し上げます。
追記
お友だちからアドバイスを受けて、この”.”は連結演算子だと言うことが分かりました。
function makeTable($shift) { alp_b = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; $alp_s = "abcdefghijklmnopqrstuvwxyz"; $shift = $shift % strlen($alp_b); $alp_b_shift = substr($alp_b, $shift).substr($alp_b, 0, $shift); $alp_b_shift_2 = substr($alp_b, $shift); $alp_b_shift_3 = substr($alp_b, 0, $shift); // $alp_s_shift = substr($alp_b, $shift).substr($alp_b, 0, $shift); var_dump($alp_b_shift_2); var_dump($alp_b_shift_3); } makeTable(2);
このように$alp_b_shiftを分けて考えると分かりやすいです。なおGitHubにおいてもコードを公開しております。関係者のみなさまありがとうございました!
【参考ページ】