重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

下記のような例の場合は、どのようにすれば【意図した結果】のようになりますでしょうか?

【コード】
<?php
$post['thread_id'] = 1;
$thread_id = $post['thread_id'];
$logs = array(
array(1, 0, $post['thread_id'], '<a href ="thread.php?id=$thread_id">編集</a>', '削除'),
);

foreach ($logs as list($no, $oya, $kiji, $edit, $delete)) {
if ($oya > 0) { continue; }
print $no .'<br>'. $kiji . $edit . $delete . '<br>';
listchild($logs, $no);
}

function listchild($logs, $parent) {
$ct = 0;
foreach ($logs as list($no, $oya, $kiji, $edit, $delete)) {
if ($oya !== $parent ) { continue; }
if ($ct++ == 0) { print '<nobr>&nbsp<ul></nobr>'; }
print '<li>' . $no .'<br>'. $kiji . $edit . $delete . '<br>' . '</li>';
listchild($logs, $no);
}
if ($ct > 0) { print '&nbsp</ul>'; }
}

【結果:編集のリンク先】
「thread.php?id=$thread_id」

【意図した結果】
「thread.php?id=1」

A 回答 (1件)

文字列の中の変数展開


http://www.phpbook.jp/tutorial/string/index5.html

sprintf
http://www.php.net/manual/ja/function.sprintf.php

HTMLが混ざってくる場合はsprintf関数系が一番読みやすいです(個人的には)

× '<a href="thread.php?id=$thread_id">編集</a>'
○ "<a href=\"thread.php?id=$thread_id\">編集</a>"
○ '<a href="thread.php?id=' . $thread_id . '">編集</a>'
◎ sprintf('<a href="thread.php?id=%d">編集</a>', $thread_id)
    • good
    • 0
この回答へのお礼

度重ね、ありがとうございます!
まだまだ勉強不足なので精進したいと思います!

お礼日時:2014/06/05 02:45

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!