質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.49%
if

if文とは様々なプログラミング言語で使用される制御構文の一種であり、条件によって処理の流れを制御します。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

解決済

2回答

1012閲覧

カスタム関数について、echoで出力されません。

trtrtr

総合スコア11

if

if文とは様々なプログラミング言語で使用される制御構文の一種であり、条件によって処理の流れを制御します。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

0クリップ

投稿2018/06/04 03:48

前提・実現したいこと

カスタム関数を実行して名前と年齢の値が入らなかった場合にメッセージを表示し、年齢が数字であるかどうかを確認するための処理を行いたいです。
カスタム関数については今回初めてやりました。なのでネットの情報を見て、見よう見まねでやりましたがブラウザには何も表示されず真っ白な画面になります。エディタはatomを使っており、文字コード(エンコード)はこれまでもutf-8で出来てたので恐らく誤りはないと思います。ただ、まだ初めてそれほど経っていないので正直理解できてない部分は多いです。このコードが反映されない原因と解決法がわかる方いましたらどうかご教授お願いいたします。

発生している問題・エラーメッセージ

エラーメッセージはなく、画面が真っ白です。

該当のソースコード

php

1<?php 2function AgeHantei($name, $age){ 3if($name == ""){ 4$a[0] = "FALSE"; 5echo "名前<br />"; 6}else{ 7$a[0] = "TRUE"; 8} 9if($age == ""){ 10$a[1] = "FALSE"; 11echo "年齢<br />"; 12}else{ 13$age = mb_convert_kana($age, "n", "utf-8"); 14if(is_numeric($age)){ 15$a[1] = "TRUE"; 16}else{ 17$a[1] = "FALSE"; 18echo "年齢が数字である<br />"; 19} 20} 21 22if($a[0] == "TRUE" && $a[1] == "TRUE"){ 23if($age < 20){ 24echo "{$name}さんは{$age}歳、未成者です。"; 25}else{ 26echo "{$name}さんは{$age}歳、成人です。"; 27} 28} 29} 30?> 31 32

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kei344

2018/06/04 03:51

AgeHanteiを実行している部分を提示してください。
m.ts10806

2018/06/04 03:53

インデントをきちんとつけてください( コード整形サービスやフォーマット機能のあるエディタをご利用ください )
guest

回答2

0

ベストアンサー

ソースコードはこれで全てですか?

上のコードでは、関数を定義しただけになるので、何も実行されません。どこかでAgeHanteiを呼び出す必要があります。

投稿2018/06/04 03:51

編集2018/06/04 03:52
maisumakun

総合スコア145183

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

trtrtr

2018/06/04 04:34

AgeHantei($name, $age);を試しに4行目のecho"名前<br />"; }の後に書いてみたのですが、何も反応がありませんでした。こういう感じではないのでしょうか?
maisumakun

2018/06/04 04:44

関数の外側に書いてください。
trtrtr

2018/06/04 07:33

ご回答ありがとうございました。無事表示されました。ベストアンサーに選ばせていただきました。
guest

0

何を見たのか分かりませんが、定義だけするという記事はおそらくないんじゃないかなと。

また「真っ白」というのは基本的に表現としてはよろしくありません。
プログラムは組んだ通りにしか動きません。
「構文エラーなどでエラーがでているがエラー表示をOffにしている」
「そもそも画面に何も出力していない」
のいずれかです。

投稿2018/06/04 03:54

編集2018/06/04 03:56
m.ts10806

総合スコア80842

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.49%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問