• 締切済み

このコードに間違いはありますか?

(1)$tempWord = "<"."TABLE".">"; (2)$tempWord+="<set name=\'".$i."\' value=\'".$ic2."\' color=\'AFD8F8\'/>"; (3)$tempWord+="</graph>"; (4)echo "</table>"; これらの代入を(1)が終わったら下の命令、(2)が終わったら下の命令 var_dump($tempWord); echo $tempWord; といった感じで、変数の内容をHTMLに出力しているのですが、 (1)のとき、var_dumpの結果はString(7)=""、echoに至っては何も表示されません。 同様にvar_dumpの結果はバイト数のカウント自体は正常に表示されるのですが、変数の内容については""と表示されるだけです。 一見、コードの間違いを発見できません。 おかしい点があったら教えてください。 これらのコードを実行すると、

noname#73526
noname#73526
  • PHP
  • 回答数3
  • ありがとう数0

みんなの回答

  • se-nabe
  • ベストアンサー率34% (31/91)
回答No.3

私も#2さんと同意見ですね。 <set name~~>のタグってなにしてるんでしょうか? あと、+= は .=ですね。 colorの指定で16進数で指定するなら#が必要な気がします。 color=\'AFD8F8\'/ => color=\'#AFD8F8\'/ あと、¥がみにくいので、私ならsprintf関数とか使いますね。 $tempWord+="<set name=\'".$i."\' value=\'".$ic2."\' color=\'AFD8F8\'/>"; $tempWord .= sprintf("<set name= '%s' value='%s' color='#AFD8F8'/>",$i,$ic2); あと、配列じゃないので、var_dumpの必要性もいまひとつ感じられません。

noname#94983
noname#94983
回答No.2

>これらのコードを実行すると、 たぶん、実行しても「</table>」というタグだけ表示されるから何も表示されないと思うが。 まず、$tempWordに+=してるのは、これは.=の間違いでないか。 それから、テキストリテラル内の\'は、'の間違いでないか。 それから、<setというタグは、何の働きもしてないんじゃないか。 それから、</graph>というのは閉じタグだけしかないんでないか。 それから、どうもこれは繰り返しで実行している中身のようなんだが、繰り返すたびに<table></table>を出力するのはあってるのか? 繰り返しの前と後で出すつもりだったんじゃないか。 テーブルなのに<tr>も<td>も何もないのはなぜなのか。テーブル内に表示する値が何もないんじゃ何も表示されないんじゃないか。 ざっとみて気がついた間違いはこれくらい。まだあるかも。

  • memphis
  • ベストアンサー率40% (975/2395)
回答No.1

タグなので、””と表示されるのが正常な動作です。 結果をソース表示すれば出力されている事が判りませんか? >これらのコードを実行すると、 あと、文章が途中で切れているような?

関連するQ&A

  • シェルスクリプトのコマンド グループ化における変数の有効範囲について教

    シェルスクリプトのコマンド グループ化における変数の有効範囲について教えてください。 中括弧"{ }"を使うと親プロセス(=その実行中のプロセス)にて実行、 小括弧"( )"を使うとサブシェル(=子プロセス)にて実行されると認識しています。 また環境変数は子プロセスに引き継がれ、シェル変数は引き継がれないと認識しています。 以下のシェルスクリプト(Bシェル)でテストしたところ、続くような結果となりました。 ~スクリプト内容~ #!/bin/sh ##TEST1 VAR01=AAA { echo 中括弧内でVAR01は${VAR01}; } ( echo 小括弧内でVAR01は${VAR01}; ) ##TEST2 { VAR02=BBB; echo 中括弧内でVAR02は${VAR02}; } echo 外でVAR02は${VAR02} ##TEST3 ( VAR03=CCC; echo 小括弧内でVAR03は${VAR03}; ) echo 外でVAR03は${VAR03} ~実行結果~ 中括弧内でVAR01はAAA 小括弧内でVAR01はAAA 中括弧内でVAR02はBBB 外でVAR02はBBB 小括弧内でVAR03はCCC 外でVAR03は  VAR02、VAR03の結果は納得できます。 またVAR01が{ }に引き継がれているのも納得できました。 しかし、VAR01はシェル変数として作成した(exportによる環境変数化はしていない)にも関わらず、子プロセスである( )内処理にも引き継がれているのはなぜなのでしょうか? 

  • Xcodeについて

    Xcodeについて プログラミングを独学で勉強しています。macを買ったので、最近 Objective-cの勉強を始めました。 以前は、PHPなども触ったことがあります。 それで今わからずに困っているのは、Xcodeでは、変数の値を 見る方法には、どういうものがあるのでしょうか? 例えば、PHPだと、echo($変数); や var_dump($変数); で 見れたのですが、Xcodeの場合どうしたら良いのかがわかりません。 NSLog(@"内容"); っていうのを本でみたんでやってみたのですが、 どこにも表示されないようです(とはいえ、それがそもそもどこに 表示されるのかがわかっていないのですが、コンソールを見ても 何も出ませんでした)

  • DOSバッチで変数の値を変数名に設定したいのですが、可能でしょうか?

    DOSバッチで変数の値を変数名に設定したいのですが、可能でしょうか? 例として、以下のようにVARという変数に対して、ある文字列を設定し、その文字列の名前の変数の値を別の変数に代入したいのです。 set VAR="TMP" if /i "%VAR%"=="TMP" (SET TEST=%%VAR%%) echo %TEST% ここで求めている挙動は、SET TEST=%%VAR%%の命令によって SET TEST=%TMP% → SET TEST=C:\Windows\Temp のように展開されればいいのですが、実際はSET TEST=%VAR%となってしまいます。 なにか良い方法がないでしょうか?

  • javascriptの変数をPHPの変数で受ける

    下記のようなjavascript において、グローバル変数clicked の値を PHPの変数$clickedで受けたいのですが、どうすれば受け取れるでしょうか? var_dump()してみると、undefinedや、NULLと表示されます。 要は、カレンダーの<td>要素をクリックしたときの日にちの番号を PHPの変数で受けたいのです。 echo '<tr id="calheader" bgcolor="#ffffcc">'; for($i=1; $i<=7; $i++){ echo '<td valign="top" align="center" class="smallText" id="'.$i.'" onclick="pusharea(this);">'.$i.'</td>'; <script language="javascript"> <!-- var clicked; // グローバル変数 function pusharea(obj){ clicked = obj.id; } // --> </script> </head> ----------------------------------------------- <script language="javascript"> alert(clicked); // <?php echo $clicked;?>=clicked; </script> <?php var_dump($clicked); echo '<tr>'; for($i=1; $i<=7; $i++){ /*if($i===$clicked)*/ echo '<td valign="top" height="50" align="center" class="smallText">'.$user.'</td>'; //else echo '<td valign="top" class="smallText">&nbsp;</td>'; } echo '</tr>';

  • mySQLの文字コード

    mySQLで、 --with--charset=ujis や、 --default-character-set=ujis など、 文字コードを指定するものがありますが、 これらは実際どのような事なのでしょうか? dumpファイルからmySQLにデータを流し込むとき、 上記の場合だとdumpファイルの文字コードはEUCに しないといけないのでしょうか? 仮に上記の場合でdumpファイルをSHIFT_JISで流し込んだとき、 そのデータをブラウザで表示する場合の 文字コードもSHIFT_JISにすれば 文字化けせずに表示したのですが。 mySQLのデフォルト文字コード(?)とinsertするデータの 文字コードは一致させなければいけないのでしょうか? よろしくお願いします。

  • ヒアドキュメントでの変数値の表示について

    以下にようにヒアドキュメントを利用して変数を表示させたいのですが、時々、正常に変数の値が表示されない場合があります。 前後に全角スペースなどを追加してみても表示されませんが、単独で変数値をechoすると表示されます。 どういった要因で表示されないのか、ご存知でしたら教えて頂きたいのですが。。 宜しくお願いします。 例)-------------------------------     print <<<EOD      <TABLE>      <TR>      <TD>$TEST</TD>      </TR>      </TABLE>     EOD; -----------------------------------

    • ベストアンサー
    • PHP
  • phpで以下のコードが次の認識であっているかどうか

    phpで以下のコードが次の認識であっているかどうかおしえてください <?php function say_hello($greeting) { echo $greeting."\n"; }; say_hello("Good morning"); say_helloというワードにfunctionで関数を定義している echoは表示させるための関数だから、 変数$greeting に表示させるという能力をつけさせている say_helloという関数が定義されて、その能力はまるかっこの中の$greetingというものの能力を使う。$greetingの能力はechoさせる能力だから、 A=B B=Cならば A=Cの関係から say_helloはechoの能力を持っている したがって、say_helloによって ("Good morning") が表示される この認識であっていますか?

    • ベストアンサー
    • PHP
  • echoの直後に変数(文字列ではなく)を記述?

    echoの正しい記述方法についてご質問します。 echoの直後に変数(文字列ではなく)を記述する場合の質問です。この場合、echoを使用して「変数です」と出力(「」は、出力しません。)するには、以下の例の内、どの記述が正しい(又は最も良い)のでしょうか? 例1: <?php $var = "変数"; echo $var,'です'; ?> 例2: <?php $var = "変数"; echo ',$var,です'; ?> 例3: <?php $var = "変数"; echo '$var,です'; ?> また、上記よりもっと良い記述方法があれば、お教え下さい。 この質問の内容に関して詳細な情報が記載されているサイト等をご存知でしたら、お教え下さい。 よろしくお願いします。

    • ベストアンサー
    • PHP
  • Cシェルの変数の使い方をご教授下さい

    Cシェルで変数を表現するときに、その一部を違う変数で表現することはできないのでしょうか? 分かりにくいと思うので例を書きます。 例) set HOGE1985=hoge set VAR=1985 と2つの変数を使って以下のような使い方をしたいのです。 echo ${HOGE${VAR}}  ←echo ${HOGE1985} のイメージ 上記の表現では間違っていました。 ちょっと無理のある使い方のような気がしますが もし可能であればどなたかご教授下さい。 お願いします。

  • Nowdocの機能をphp5.2で使いたい

    php5.3からヒアドキュメント内部で変数が展開されないNowdocが使えるようになりましたが、 これと同様のことをphp5.2でできないでしょうか。 下のコードで、ヒアドキュメント内の内容を触らずに(\$hogeなどとエスケープせずに) 変数$hogeを展開させない方法を教えてください。 $source = <<<HERE <?php $hoge = "hogehoge"; ?> HERE; echo $source;

    • ベストアンサー
    • PHP

専門家に質問してみよう