PHP 5、ヌ、マ。「・ソ・、・ラ・メ・ニ・」・ー(Type Hinting)、ャニウニ�、オ、�゙、キ、ソ。」 、ウ、�ヒ、隍遙「エリソマ。「 (・ッ・鬣ケ、ホフセチー、リソラ・愠ネ・ソ・、・ラ、ホテ讀ヒサリト熙ケ、�ウ、ネ、ヒ、隍�) ・ム・鬣癸シ・ソ、ェ・ヨ・ク・ァ・ッ・ネ、筅キ、ッ、マヌロホ� (PHP5.1ーハケ゚) 、ャノャ、コサリト熙オ、��隍ヲ、ヒ、ケ、�ウ、ネ、ャ、ヌ、ュ、�隍ヲ、ヒ、ハ、熙゙、キ、ソ。」 、キ、ォ、キ。「・ヌ・ユ・ゥ・�ネ、ホ・ム・鬣癸シ・ソ、ホテヘ、ネ、キ、ニ NULL 、ネヘム、キ、ソセ�遉マ。「ク螟ォ、鯢、ーユ、ホテヘ、惞ヒサリト熙ヌ、ュ、�隍ヲ、ヒ、ハ、熙゙、ケ。」
ホ�1 ・ソ・、・ラ・メ・ニ・」・ー、ホホ�
<?php
// 、ネ、「、�ッ・鬣ケ
class MyClass
{
/**
* ・ニ・ケ・ネエリソ�
*
* ツ� 1 ー惞マ OtherClass キソ、ホ・ェ・ヨ・ク・ァ・ッ・ネ、ヌ、ハ、ア、�ミ、ハ、鬢ハ、、
*/
public function test(OtherClass $otherclass) {
echo $otherclass->var;
}
/**
* 、筅ヲー�ト、ホ・ニ・ケ・ネエリソ�
*
* ツ� 1 ー惞マヌロホヌ、ハ、ア、�ミ、ハ、鬢ハ、、
*/
public function test_array(array $input_array) {
print_r($input_array);
}
}
// 、筅ヲー�ト、ホ・オ・ラ・�ッ・鬣ケ
class OtherClass {
public $var = 'Hello World';
}
?>
・ソ・、・ラ・メ・ネ、ホサリト熙�、ソ、オ、ハ、、、ネ・ュ・罕テ・チイトヌス、ハテラフソナェ・ィ・鬘シ、ネ、ハ、熙゙、ケ。」
<?php
// 、ス、�セ、�ホ・ッ・鬣ケ、ホ・、・ケ・ソ・ケ
$myclass = new MyClass;
$otherclass = new OtherClass;
// Fatal Error: Argument 1 must be an object of class OtherClass
$myclass->test('hello');
// Fatal Error: Argument 1 must be an instance of OtherClass
$foo = new stdClass;
$myclass->test($foo);
// Fatal Error: Argument 1 must not be null
$myclass->test(null);
// Works: Prints Hello World
$myclass->test($otherclass);
// Fatal Error: Argument 1 must be an array
$myclass->test_array('a string');
// ニーコ釥ケ、�: ヌロホホニ簣ニ、スシィ、ケ、�
$myclass->test_array(array('a', 'b', 'c'));
?>
・ソ・、・ラ・メ・ニ・」・ー、マ。「エリソヌ、篏ネヘム、ヌ、ュ、゙、ケ。」
<?php
// 、ネ、「、�ッ・鬣ケ
class MyClass {
public $var = 'Hello World';
}
/**
* ・ニ・ケ・ネエリソ�
*
* ツ� 1 ー惞マ MyClass キソ、ホ・ェ・ヨ・ク・ァ・ッ・ネ、ヌ、ハ、ア、�ミ、ハ、鬢ハ、、
*/
function MyFunction (MyClass $foo) {
echo $foo->var;
}
// ニーコ釥ケ、�
$myclass = new MyClass;
MyFunction($myclass);
?>
・ソ・、・ラ・メ・ネ、ヒ、マ NULL テヘ、ネヘム、ケ、�ウ、ネ、筅ヌ、ュ、゙、ケ。」
<?php
/* NULL テヘ、篏ネ、ィ、゙、ケ */
function test(stdClass $obj = NULL) {
}
test(NULL);
test(new stdClass);
?>
・ソ・、・ラ・メ・ネ、マ。「objectキソ、�arrayキソ (PHP5.1ーハケ゚) 、ヌ、ホ、゚サネヘム、ヌ、ュ、゙、ケ。」 int 、ェ、隍モ string、ホ、隍ヲ、ハ トフセ�ホキソ、ヌ、ホ・ソ・、・ラ・メ・ニ・」・ー、マ・オ・ン。シ・ネ、オ、�゙、サ、」