<?php print round( 255,-1)."\n"; // 1の位を四捨五入 print round( 255,-2)."\n"; // 10の位を四捨五入 print round( 255.234,2)."\n"; // 少数第2位を四捨五入 ?> ●実行結果 260 300 255.23
<?php print round( 255,-1)."\n"; // 1の位を四捨五入 print round( 255,-2)."\n"; // 10の位を四捨五入 print round( 255.234,2)."\n"; // 少数第2位を四捨五入 ?> ●実行結果 260 300 255.23
(2012/11/01追記) 4年ほど前の記事「PHP5.3.0alpha3のround関数の実装がPHP5.2.6と変わった - hnwの日記」でお伝えした通り、PHP 5.3.0から別の実装が採用されており、本ページで指摘しているような挙動のPHPは既に絶滅危惧種です。念のため。 さて、プログラミングの話題もたまには書いてみます。今回はPHPのround関数の挙動が変だ!という話題です。 round()は浮動小数点数を四捨五入する関数で、大抵の言語に同じ名前で実装されているかと思います。ではPHPのround関数の何が問題なのか、ちょっと試してみましょう。 $ uname -sro Linux 2.6.9-42.0.10.plus.c4smp GNU/Linux $ php --version PHP 5.1.6 (cli) (built: Feb 23 2007 06:56:38)
IBM Related Japanese technical documents - Code Patterns, Learning Path, Tutorials, etc. Please open new issue/pull requests in either English or Japanese if you would have any feedback or you would like to contribute this repo. We provide mainly "Japanese contents" by markdown text. IBM Developerの最新情報は https://developer.ibm.com/ にアクセスし、英語のコンテンツを参照してください。 このリポジトリは、IBM Developer Japan Webサイトで公開していた
PHPのDomDocumentを使ってXMLを生成してみた。 $dom = new DomDocument('1.0', 'utf-8'); echo $dom->saveXML(); で <?xml version="1.0" encoding="utf-8"?> $dom = new DomDocument('1.0', 'utf-8'); $hoge = $dom->appendChild($dom->createElement('Hoge')); echo $dom->saveXML(); で <?xml version="1.0" encoding="utf-8"?> <Hoge/> $dom = new DomDocument('1.0', 'utf-8'); $hoge = $dom->appendChild($dom->createElement('Hoge')); $h
http://1-byte.jp/2011/03/20/20_tips_you_need_to_learn_to_become_a_better_php_programmer/ 良いPHPerだって?そんなものは丸めてゴミ箱にでも捨ててしまった方が資源の再利用になる分いくらかマシだ。 つまり俺たちがしなくちゃならないことは「より良いPHPerにならないため」に何ができるかってことなのさ。 それじゃ、始めよう。 1. ?>を使うな?>なんて使っちゃいけない。そう俺たちはBAD PHPer。 無駄なホワイトスペースの出力に悩まされるくらいなら対称性なんて丸めてゴミ箱にでも捨てた方がまだマシだ。非対称性こそが賛美。 2. 設定ファイルをPHPで書くなrequire_once("config.php"); 未だにこんなことやってるやつがいるのかいベイベー。絶対にダメだ。この一行を見たら俺は悶絶する
PHP の関数にはおもしろいものがありますね。(他の言語でもあるのかな?)checkdate 関数はその日が存在するかどうかをチェックする関数なのです。 例えば checkdate( 2, 29, 1985 ) と記述することで1985年2月29日が存在するかどうかがわかります。この関数をそのまま実行すると、何も表示されません。2月29日が存在しないからです。これを28日にすると1が表示されます。これがtrueを返すと言うことなんですねぇ。 今度は for($day = 1; checkdate(2, $day, 1985); $day++ ){echo $day;} とやってみます。これは$day が1から始まり順に増えていく、そしてそれが存在すれば $day を表示する。29になりそれが存在しなければループを抜け出すという命令です。これを使えば、指定した年月の日付を順にすべて表示さ
平素より「PHPプロ!」をご愛顧いただき、誠にありがとうございます。 2006年より運営してまいりました「PHPプロ!」ですが、サービスの利用状況を鑑みまして、2018年9月25日(火曜日)をもちましてサービスを終了させていただくことになりました。 サービス終了に伴いまして、2018年8月28日(火曜日)を持ちまして、新規会員登録ならびにQ&A掲示板への新たな質問、回答の投稿を停止させていただきます。 なお、ご登録いただいた皆様の個人情報につきましては、サービス終了後、弊社が責任をもって消去いたします。 これまで多くの皆様にご利用をいただきまして、誠にありがとうございました。 サービス終了に伴い、皆様にはご不便をおかけいたしますこと、心よりお詫び申し上げます。 本件に関するお問い合わせはこちらよりお願いいたします。
#釣りっぽいタイトルですが大まじめです via. PHP 逆引きレシピ - 肉とご飯と甘いもの @ sotarok で、 @ (エラー制御演算子といいます!)はねーよ的な話をしましたが、著者の方から、「@に対して批判的になる理由が記載されていない」とのメールをいただきました。確かにその通りでした。実は理由を下書きのときには書いたのですが、長くなってしまったので削ってポストしたのですが、かえってわかりづらくなってしまいましたね.すみません。 ということで、PHPプログラマが、エラー制御演算子「@」使うべきでない 5 つの理由を述べます. 始める前に、本質的なところ 色々理由はつけようと、やっぱり前回述べた、 終的に$qに入るものが同じであることと、コードとして同じ意味であるかは、別じゃないでしょうか。 が一番本質的な話で、それ以上の話ではありません。 つまり、発生する可能性があるとわかってい
絶対忘れるのでメモ。 値if($var)issetemptyis_null $var=1TRUETRUEFALSEFALSE $var="";FALSETRUETRUEFALSE $var="0";FALSETRUETRUEFALSE $var=0;FALSETRUETRUEFALSE $var=NULL;FALSEFALSETRUETRUE $varFALSEFALSETRUETRUE $var=array()FALSETRUETRUEFALSE $var=array(1)TRUETRUEFALSEFALSE
Getting Started Introduction A simple tutorial Language Reference Basic syntax Types Variables Constants Expressions Operators Control Structures Functions Classes and Objects Namespaces Enumerations Errors Exceptions Fibers Generators Attributes References Explained Predefined Variables Predefined Exceptions Predefined Interfaces and Classes Predefined Attributes Context options and parameters Su
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く