SOFTELメモ Developer's blog

会社概要 ブログ 調査依頼 採用情報 ...
てるてる動画

【php】変数名に日本語を使ってもよい?

問題

こんなphpプログラムはありですか。マルチバイト文字で変数名。

<?php
$名前 = '岐阜花子';
$住所 = '岐阜県岐阜市';
echo $名前 . '(' . $住所 . ')';

問題

大丈夫。下のようなソースでも動作する。

諸事情で、やむを得ずやったことがあるが、マニュアルにはOKと書いてある。

sample

<?php
class A
{
    private $顧客名;

    function set顧客名($v)
    {
        $this->顧客名 = $v;
        return $this;
    }

    function get顧客名()
    {
        return $this->顧客名;
    }
}

$a = new A;
$a->set顧客名('だれそれさん');

echo $a->get顧客名();
//出力結果:だれそれさん

定数も日本語いけます。これはこれで分かりやすいかも?

sample

define('私の住所', '愛知県名古屋市');
echo 私の住所;

関数も日本語いけます。

sample

function なう() {return date('Y年m月d日 H時i分s秒');}
echo なう();

参考

マルチバイト文字であっても、変数名、定数名、関数名に使用できる。

文字またはアンダースコアから始まり、任意の数の文字、 数字、アンダースコアが続きます。正規表現によれば、これは次の ように表現することができます。 ‘[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*’

http://jp2.php.net/manual/ja/language.constants.php

http://jp2.php.net/manual/ja/language.variables.basics.php

http://jp2.php.net/manual/ja/functions.user-defined.php

関連するメモ

コメント