私が 管理する サイトには 7000女 犬の コンテンツが ある. ところが 昔に 入力された 文等は コードが だいなしだ. はなはだしくは 文 マン 前に <p>街 入って行って あるの ない 場合も ある. そのため プログラミングを 通じて 補った. いちいち だ 入力する 数は ないから.(後には DBを 直接 だ 改め直す 考えなのに まだ 時間が ない.)

if(strpos($content, '<p')!==0 && strpos($content, '<P')!==0)
  $content = '<p>'.$content;

コード 自体は 簡単だが 気を使う 蟹 まどろみ ある.

まず strpos増えた 該当 文字列を 捜すの できない 場合 falseを 返還するのに, PHPでは if 門で 0度 false処理される. したがって 比較演算子を ==路 使えば 中 なって ===路 使うと する. そのため 上 コードで !==と 比べた のだ.

==増えた 兄さん(型) タイプまでは 気を使うの ない 比較演算子で, ===増えた 兄さん(型) タイプまで 気を使う 比較演算子だ.

0==false 増えた trueジーマン, 0===false増えた true街 ない.

そのため php マニュアルで strpos 項目を 見れば 下と ような 説明が ある.

Warning

これ 関数は 論理 FALSEを 返還するが, 0おこるが “” など, 論理 FALSE路 扱う 数 ある 違う 値段を 返還する 数 あります. 詳細な 情報は 論理型 セクションを 参考してください. これ 関数の 返還値を 確認しようとすれば === 演算子を 利用してください.

内 言葉と ような 言葉だ. 文字列 位置が マン 初めの 場合 0これ 返還されるという 音. そのため if門が ないという 意味の falseと 判断がつかない 数 あるから 必ず ===演算子を 使いなさいという 音だ.

この程度 説明したら なる 側で.

PHP5からは stripos街 出た. これは 大小文字 仕分けなしに 検査する 数 ある ことだ. 私が 使う サーバーは PHP4路 なって あって striposを 使うの できなくて && 演算子で 縛って 大小文字を 検査した.

以上.

- コメント機能はありません。コメントの代わりに[email protected]にメールを送ってください。