###前提・実現したいこと
$_SERVER['HTTP_HOST']で現在のドメイン名を取得して、指定したドメイン名と同じ場合で分岐させたい。
###該当のソースコード
php
1<?php if ( $program[ 'url' ] == '') : ?> 2<div>リンクテキスト</div> 3<?php elseif (strstr($_SERVER['HTTP_HOST'],'○○○○○○○○.com/')) : ?> 4<div><a href="<?=$program[ 'url' ]?>">リンクテキスト</a></div> 5<?php else :?> 6<div><a href="<?=$program[ 'url' ]?>" target="_blank">リンクテキスト</a></div> 7<?php endif; ?>
修正後
<?php if ( $program[ 'url' ] == '') : ?> <div>リンクテキスト</div> <?php elseif (preg_match($_SERVER['HTTP_HOST'],$program[ 'url' ])) : ?> <div><a href="<?=$program[ 'url' ]?>">リンクテキスト</a></div> <?php else :?> <div><a href="<?=$program[ 'url' ]?>" target="_blank">リンクテキスト</a></div> <?php endif; ?>
###試したこと
$_SERVER['HTTP_HOST']と$program[ 'url' ]に一致するURLがあれば、urlとリンクテキストを出力、一致しなければ target="_blank"が記載されたものが出力としたい。
上記の修正後コードでは、エラーはでていませんが、すべてにtarget="_blank"が付与されてしまいます。
→エラーでておりました。
<?php elseif (preg_match($_SERVER['HTTP_HOST'],$day_program[ 'url' ])) : ?>
がエラーになっています。
###補足情報(言語/FW/ツール等のバージョンなど)
javascript、php
javascript、phpともに初心者です。

回答4件
あなたの回答
tips
プレビュー