0

<a>画像ソースとその html を返す PHP 関数を使用してタグを作成しようとしています。

私のコードは現在これです:

if (returnString('image')) : echo '<img src="'.returnString('image').'" />'; endif;

私の意図した最終出力は次のようになります。

<img src="http://..." />

しかし、これを返すだけです:

"http://..."

これは文字列のみです。これはなぜですか?

編集:実際に、関数が存在するかどうかを確認したいことを追加したいと思います(nullの場合はエコーが必要です)。これがif、最初に がある理由です。

次のような関数をチェックしないと機能します。

echo '<img src="'; returnString('image'); echo '" />';
4

4 に答える 4

2

:ここではandは必要ありませんendif

これを試して:

if (returnString('image')) echo '<img src="'.returnString('image').'" />'; 

または、戻り値を変数に格納し (上記の mplungjan が提案したように)、それをコードで使用することもできます (より読みやすい、IMO)。そうすれば、関数が 2 回呼び出されるのを避けることができます。

$src = returnString('image');
if (isset($src)) echo '<img src="'.$src.'" />'; 

関数が存在するかどうかを確認したいということを実際に追加したいと思います。そのため、最初に if があります。

まったく同じ目的のための組み込み関数があります-function_exists()

次のことができます。

if (function_exists('returnString')) {
    $src = returnString('image');
    echo '<img src="'.$src.'"/>';
}

お役に立てれば!

于 2013-08-31T07:22:55.790 に答える
1
$str = returnString('image');
if (isset($str)) echo '<img src="'.$str.'" />'; 
于 2013-08-31T07:23:51.190 に答える
0

これを試して :-

<?PHP 
$s="http://www.sagmart.com/image/logoes.png";

if($s) {
echo '<img src="'.$s.'" />';
}
?>

returnString('image') についてはまったくわからないので、新しい変数を使用しました。

最後の endif を削除します。

于 2013-08-31T07:29:01.580 に答える