プロが教える店舗&オフィスのセキュリティ対策術

クラスの勉強をしているのですが、
記憶寿命をfunctionの中で完結させsample2以降でも同じ変数などを使えるようにするため定義済み関数内でクラスを処理したいのですが下記のエラーが出てしまいます。
functionの中でクラスを簡潔させるにはどのようにすればよいでしょうか?また、これはなぜエラーが起きているのでしょうか?

function sample1(){
$pr=new parson;
$pr->name="鈴木";
$pr->age=56;

print $pr->getname();
print $pr->getage();

class parson {

public $name="鈴木";
public $age=56;

function getname(){return $this->name;}
function getage(){return $this->age;}
}}
sample1();

Fatal error: Uncaught Error: Class 'parson' not found in hoge/class.php:11 Stack trace: #0 /hoge/class.php(27): sample1() #1 {main} thrown in /hoge/class.php on line 11

A 回答 (2件)

とりあえずわたしの環境では、


class person{...}を
new personよりも前に書くと動きました。

が、わたしも関数の中にクラスを入れるのは見たこと無いです。
    • good
    • 0
この回答へのお礼

ありがとうございます

お礼日時:2021/04/11 12:32

関数の中にクラスは作れませんよ

    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!