現在、プログラムの勉強中の初心者です。
今回、勉強目的で作成しているサイトにて解決する事の出来ない問題が発生してしまいました。
【問題個所】
文字列の中に入っている「半角よりも小さい空白」を削除する方法が分からずに困っております。
PHP
1 2//変数の中にHTMLタグを格納します。 3$title = '<a target="_blank" title="N112_hooduewotukujyosei_TP_V1" href="http://livedoor.blogimg.jp/kijomatomelog/imgs/1/c/1c721819.jpg"><img class="pict" hspace="5" alt="N112_hooduewotukujyosei_TP_V1" border="0" height="320" width="480" src="http://livedoor.blogimg.jp/kijomatomelog/imgs/1/c/1c721819-s.jpg"></a><br /><br /><!-- Generated by 2chまとめくす (http://2mtmex.com/) --> 4<a href="http://www.kijomatomelog.com/archives/1069949485.html">続きを読む</a> 5<img src="http://counter2.blog.livedoor.com/c?ro=1&act=rss&output=no&id=6623689&name=kijomatomelog&pid=1069949485" width="1" height="1" />'; 6 7//格納された文字列からHTMLタグを削除します。 8//中身は「 続きを読む 」となります。 9$title = strip_tags($title); 10 11$title2 = "説明文はありません。(この文章が表示されたら成功です。)"; 12 13//$titleの中身が「 続きを読む 」の場合には 14//$titleの中身を$title2へと変更します。 15if($title == " 続きを読む "){ 16 $title = $title2; 17 } 18 19var_dump($title); 20
【実行結果】
HTML
1string(19) " 続きを読む "
半角よりも小さい空白が「続きを読む」の前後に入っているように思えるのですが
この空白を指定しつつ
PHPのif文にてそのものずばりを条件分岐する事が出来ませんでした。
【妥協点】
妥協点としてこの空白を無視しつつ「文字列」にて「続きを読む」がある場合の条件分岐を指定すると
成功しました。
PHP
1if(strpos($title,"続きを読む") !== false ){ 2 $title = $title2; 3 } 4var_dump($title);
【実行結果】
HTML
1string(48) "説明文はありません。(この文章が表示されたら成功です。)"
ただ、上記のstrposを利用した場合ですと
文字列に「続きを読む」という文章があるとすべて適用されてしまう為、
本来の目的の変数の中身が**「 続きを読む 」だけだった場合に行う条件分岐の指定**が出来ずに困っています。
(例:説明文はありません。等といった文章を「 続きを読む 」の代わりに入れたいと思っています。)
解決方法をご存知の方や
何か気になる点がありましたら
お力をお貸し頂けると嬉しいです。
どうかよろしくお願いいたします。
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/03/10 23:45
2018/03/10 23:54