2015年04月11日

PHP入門 練習問題19

以下のようなスクリプトを組んだところ「 1 」と表示されてしまいました。
「 2 」と表示させるにはどのようなスクリプトにしたら良いでしょう?

<?php $a=1; function tasuichi(){ print ($a+1); } tasuichi();






スクリプト例 <?php $a=1; function tasuichi(){ global $a; //この一行を追加します print ($a+1); } tasuichi();


最初に定義されている$aには1が代入されていますが、これはfunctionの外にありますのでグローバル変数と呼ばれるものです。
一方、function内で使われている$aはローカル変数と呼ばれるものです。変数の初期値は0なので1を足しても0+1で1になってしまいます。
そこで、「 global $a; 」という一行を追加すると最初に定義されている$aを変数をfunction内で使用することができるようになります。

posted by YNbros at 11:54| 練習問題 | このブログの読者になる | 更新情報をチェックする
×

この広告は90日以上新しい記事の投稿がないブログに表示されております。