- ベストアンサー
エラーが出ないようにしたいのですが?
- <html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /></head><body><?php echo 'テストプログラム開始',PHP_EOL; $ret1 = array_reverse(); $ret2 = array_reverse(1); echo 'テストプログラム終了',PHP_EOL; ?></body></html>
- 以上のプログラムを実行すると、以下のエラーが出るように組まれたプログラムです。エラーが出ないプログラムにするには、どんなプログラムを組めばできますか!?早々ですが^^
- Warning: array_reverse() expects at least 1 parameter, 0 given in C:\xampp\htdocs\study.localhost\E_WARNING.php on line 9 Warning: array_reverse() expects parameter 1 to be array, integer given in C:\xampp\htdocs\study.localhost\E_WARNING.php on line 10
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
何をやりたいのかが理解できません。 > 以上のプログラムを実行すると、 > 以下のエラーが出るように組まれたプログラムです。 ということなら 「エラーが出るように」作ったのですから 「エラーが出る」のが「正しい、期待通り動作」ということになります。 「エラーを出さない」というのも、2つの解釈ができます。 (1)「エラーの無い」プログラムを作る (2) エラーが発生しても、画面上には表示しない (1)の場合、間違いを訂正する、ということになります。 「訂正する」ということは「正しい状態は何か?」がわかっている必要があります。 しかし、このプログラムでは、何が「正しい」のかが皆目見当が付きません。 (2)については、php.iniやerror_reporting関数を使うなどで、メッセージの制御ができます。 http://www.php.net/manual/ja/function.error-reporting.php ただ、これは「エラーは発生しているけど表示はしない」という状態で、実運用時にエラー表示を隠す、といった目的で使われるものです。 学習中や開発時は、むしろ多くのメッセージを出すようにしておいて、エラーメッセージをよく読んで理解することが大事です。
その他の回答 (4)
マニュアルを読みましょう^^ array_reverse http://php.net/manual/ja/function.array-reverse.php マニュアルの読み方 http://php.net/manual/ja/about.prototypes.php
- notnot
- ベストアンサー率47% (4900/10358)
簡単な英語ですがわかりませんか? >Warning: array_reverse() expects at least 1 parameter, 0 given 警告:array_reverse() は少なくとも1つのパラメータが必要だが、0個だ。 >Warning: array_reverse() expects parameter 1 to be array, integer given 警告:array_reverse() の第一パラメータは配列であるべきだが、整数だ。 そもそも、array_reverse() の意味がわかっていますか?どんな結果が得られると思っていますか?
- Bnbnbnta101
- ベストアンサー率7% (41/516)
Array_reverseの引数には配列渡さないとダメです。 あとechoの文字列の結合部分はカンマではなくドットですよね。
補足
ご回答ありがとうございます。 まだまだ素人なものですみません! 以下ご回答から 「echoの文字列の結合部分はカンマではなくドットですよね。」 私の目からして、参考書には . ドットは見当たりません!? あくまでも私の目から見て判断した場合、このプログラムに出てくる 記号は順番に < ? ' , _ ; = () ドット . は見当たりません 以上よろしくお願いいたします。
- maiko0318
- ベストアンサー率21% (1483/6969)
$ret3 = array_reverse(2); // 2以上ならエラーは出ないはず。
補足
早々^^ご回答ありがとうございました。 すみません! よくわからなかったので 以下にしたところ エラーが一つ増えたみたいです。 宜しくお願いします。 <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> </head> <body> <?php echo'テストプログラム開始',PHP_EOL; $ret1 = array_reverse(); $ret2 = array_reverse(1); $ret3 = array_reverse(2); echo'テストプログラム終了',PHP_EOL; ?> </body> </html> テストプログラム開始 Warning: array_reverse() expects at least 1 parameter, 0 given in C:\xampp\htdocs\study.localhost\E_WARNING.php on line 9 Warning: array_reverse() expects parameter 1 to be array, integer given in C:\xampp\htdocs\study.localhost\E_WARNING.php on line 10 Warning: array_reverse() expects parameter 1 to be array, integer given in C:\xampp\htdocs\study.localhost\E_WARNING.php on line 11 テストプログラム終了
お礼
ご回答誠にありがとうございました。 素人ながら、このプログラムの主旨が分かりました。 ご紹介していただいた、HPは後でじっくり読ませてもらいます。 http://www.php.net/manual/ja/function.error-reporting.php それと以下も、質問した後で発見しましたが、私のレベルだと到底理化できませんでした_ _ http://jp1.php.net/manual/ja/function.array-reverse.php