PHPなんて書いたことないのに調子に乗ってググってコピペでPHP組んでサイトを作ったら案の定なんかエラー出てる…意外と対応は簡単だったのでまとめてみました。
Warning: A non-numeric value encountered
出逢っちゃいましたか!冒頭の下の通り、PHPなんて書いたことないのに、なんかインタラクティブなサイトを作ろうとまとめサイト作ってみました。
2ch5chまとめまとめ
RSSリーダーアプリってなんか使いにくいので、巡回サイトをまとめてみました。 痛いニュース(ノ∀`) はてなブックマーク-人気エントリー アルファルファモザイク ニュー速クオリティ ハムスター速報 らばQ VIPPERな俺 もみあげチャ〜シ...
まー何というか、正直自分の巡回用がメインなんですけど。いいじゃないですか、チャレンジ。でも案の定エラーが出たわけです。
Warning: A non-numeric value encountered in /wp-includes/SimplePie/Parse/Date.php on line 694
何となく、「変数が数値の型じゃねぇぞ!」って怒られている感じ。型意識せずに使ってるとよく出ますよねー。
でも今回は自分が組んだコードの場所じゃないみたい。ご丁寧にエラーコードが自分のサイトにぶベーんって貼られてるからデバッグが楽だよねー(やけくそ)
エラーへの対応方法
わざわざデバッグ用にコンソールに出力しなくても自分のサイトにバチーんと書かれてる内容を見ると、もうどのファイルのどこの行でエラーが発生してるか書かれています。
まずは該当ファイルへ。
自分はさくらサーバをレンタルしてますので、さくらのコントロールパネルに行きます。
レンタルサーバ コントロールパネル
んで、ファイルマネージャから辿っていって、該当の「Date.php」ファイルを開きます。
次は問題のコードの修正
$second = round($match[6] + $match[7] / pow(10, strlen($match[7])));
該当コードがこれ。文字列として扱われているからround関数で怒られているんでしょう。
数値として型変換すればOK。配列の前に「int」を入れて整数型にしましょう。
$second = round((int)$match[6] + (int)$match[7] / pow(10, strlen((int)$match[7])));
よし問題なし!
まとめ
何でしょうね、このやってみると必ずつまづく感じ。でもそれが人を成長させるってもんです。
それにしてもPHPって便利ですね。WordPressやる上でとても助かりそうなのでもっと勉強しようかなー。
コメント