1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

WordPressもサポートPHPバージョンが7以上になったので、ちょっと触ってみようかなと思っての覚書。

普通の書き方

<?php
function get_greeding_message($number) {
  return $number;
}
print_r( get_greeding_message( 1 ) );

messageなのに数字返ってきますね。これを型宣言でつぶしてみます。

型を宣言する

<?php
function get_greeding_message( int $number ): string {
  return $number;
}
print_r( get_greeding_message( 1 ) );

普通に書くとこんな感じですね。
ただ、これをこのまま実行しても、エラーにはなりません。

強い型付け

declare(strict_types=1);を書くことで、厳密にチェックすることができます。
https://www.php.net/manual/ja/functions.arguments.php#functions.arguments.type-declaration.strict

<?php
declare(strict_types=1);
function get_greeding_message( int $number ): string {
  return $number;
}
print_r( get_greeding_message( 1 ) );

ここまで書くと、実行時にエラーがでます。

PHP Fatal error:  Uncaught TypeError: Return value of get_greeding_message() must be of the type string, integer returned in /home/ec2-user/test.php:4
Stack trace:
#0 /home/ec2-user/test.php(6): get_greeding_message(1)
#1 {main}
  thrown in /home/ec2-user/test.php on line 4

動くようにする

<?php
declare(strict_types=1);
function get_greeding_message(int $number): string {
  return 'Hello No.' . $number;
}
print_r( get_greeding_message( 1 ) );
1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?