LoginSignup
0
1

More than 3 years have passed since last update.

PHPの基本操作⑥ 「電子メールの送信」

Last updated at Posted at 2021-04-26

参考書籍

よくわかるPHPの教科書 PHP7対応版

他記事リンク

電子メールを送信する

PHPを使って、電子メールを送信する機能を実装します。

日本語でメールを送信する場合mb_send_mail関数を使います。戻り値として、成功の可否が返されます。

mb_send_mail(送り先のメールアドレス, 件名, 本文, 送り元のメールアドレス等)

このファンクションを使う場合、PHPの設定で言語や文字コードを以下のように設定することで正しく動作します。

mb_language('japanese');
mb_internal_encoding('UTF-8');

戻り値などを利用し、表示を変更するように実装すると以下のようになります。(メールサーバーの稼働やNDSサーバーの稼働が必要となるため、以下実行してもメールは送信されません。)

電子メールを送信する
<?php
  $email = 'receive@example.com';

  mb_language('japanese');
  mb_internal_encoding('UTF-8');

  $from = 'submit@example.com';
  $subject = 'PHPの基本操作の練習';
  $body = 'このメールは、「PHPの基本操作の練習」から送信しています';

  $success = mb_send_mail($email, $subject, $body, 'From: ' . $from);
?>
<!DOCTYPE html>
<html lang="ja">
<head>
  <meta charset="UTF-8">
  <title>PHPの基本操作の練習</title>
</head>
<body>
  <pre>
    <?php if($success) : ?>
    電子メールを送信しました。メールボックスを確認してみてください。
    <?php else : ?>
    電子メールの送信に失敗しました。Webサーバーの設定などをご確認ください。
    <?php endif; ?>
  </pre>
</body>
</html>

 

2種類のトップページをランダムに表示する

ランダムな整数を生成するにはrand関数を使います

ランダム関数の使い方
ランダムな値 = rand(最小の整数, 最大の整数);

これを条件に用いたif文を使い、header関数を呼び出すことで、2種類のトップページをランダムに表示します。

2種類のトップページをランダムに表示します
<?php
  if(rand(0, 1) == 0) {
    header('Location: a.html');
  } else {
    header('Location: b.html');
  }
?>
a.html
このページは、Aのページです。もう一度、ページを読み込んでみましょう。
b.html
このページは、Bのページです。もう一度、ページを読み込んでみましょう。
0
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
0
1