サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
デスク環境を整える
my-rest.icca.jp
はじめに PHP5.3より三項演算子において2項目の省略が可能になりました。 PHP: 比較演算子 – Manualにおける三項演算子の項目を参照すると、以下のように書かれています。 PHP 5.3 以降では、三項演算子のまんなかの部分をなくすこともできるようになりました。 式 expr1 ?: expr3 の結果は、expr1 が TRUE と同等の場合は expr1、 それ以外の場合は expr3 となります。 サンプルコードで書くと、こういうことになります。 <?php $value = "hoge"; $a = $value? $value: "default"; // 旧来の書き方 $b = $value?: "default"; // PHP5.3より追加された書き方 ?> $valueがTRUEもしくはTRUEにキャストされる値なら$valueを、違うなら”default”
この記事の所要時間: 約 5分16秒 PHP Advent Calendar 2013の11日目です。 昨日の記事は PHP – コードをまとめる技術としてのイテレータとジェネレータ – Qiita [キータ] です。 本日は NULL と TRUE/FALSE の考え方、特に AND/OR をしたときの動きについてお話しします。 概略 NULL を AND/OR したときの挙動は、 SQL と PHP で違います。 SQL は3値論理であるのに対し、 PHP では NULL 型を boolean 型にキャストしているからです。 プログラミング、特に移行開発をするときには、気をつけましょう。 はじめに שלום! מה שלומך?1 ウェブに携わるお仕事をしているプログラマさんは、マルチリンガルな方が多いかと思います。 PHP と SQL を使ってるマルチリンガルプログラマさん
PHPでassert()を使ってみたので、メモしておきます。 assert()で出来ること assert()で出来ることを、ざっくりと箇条書きします。 「この条件が守られているとき」を、プログラムに書くことが出来る PHP5.3では、条件外の時には警告を発する(デフォルトの設定) 「assert()を実行する/実行しない」をphp.iniもしくはassert_options()で設定できる Javaと違い、失敗時に例外を吐かず、後続するプログラムが実行されてしまう点に注意が必要です(デフォルトの設定)。 今回は設定を変更して、assert失敗時にはプログラムの実行を終了するようにしました。 ソースコード assert_options(ASSERT_BAIL, true);とすることで、assert失敗時にプログラムの実行を終了することができます。 実行結果 assert()の実行結果 文字
この記事の所要時間: 約 4分14秒 PHP Advent Calendar 2012の7日目です。 今回はPHPの整数について調べてみます。 Integer型 ソフトウェアを作る上で数値を扱うことは多々あります。 シーケンス番号、金額、数量等、枚挙に暇がありません。 小数(浮動小数点数)は誤差が出るため、 金額や数量等の重要な値は10n倍して整数にしてから取り扱うこともあります。 整数の代表的な型は Integer (int) 型です。 PHPでは型を宣言する必要はなく、PHP処理系が型をよしなに判断しています。 $i1 = (int)'123'; // $i1 は整数 123 $i2 = intval('123'); // $i2 も整数 123 Integer型の上限は一般に 231-1 です。1 つまり、Integer型で正しく扱える整数は一般に9桁までであり、10桁以
PHP Advent Calendar 2011 #16 です。 前の記事は @bimihoujyun の PHP5.4の新機能、「trait」を知る!(PHP Advent Calendar jp 2011Day15) です。 明日から使える Tips が並ぶ PHP Advent Calendar 2011。 ここらでちょっと趣向を変えて、 PHP インタプリタでも読んでみませんか? ※ Syntax Highlighter がうまく動かないかも…。直す暇無いので一先ず公開! 今回の概要 PHP の文字列比較について、緩やかな比較演算子(==, )による比較を避けたほうが良いとされます。(*1) これは PHP が文字列を数値として比較する場合があるためです。 例えば、以下のコードは SAME と表示されます。 <?php if ( "01" == "1" ) { echo "S
要約すると、以下のとおり。 クロージャとは 関数Aの中にある、関数Bのこと 関数Aで使っている変数は、 関数Bでも使うことが出来る PHPでのクロージャ 5.3.0 以降で使える useキーワードが必要 変数に無名関数を格納すると使いやすいよ! 感想とか 思ったよりもトークが受けた! お酒入った状態でのプレゼンだったからか、ちょいと饒舌だった気がする お酒の場なのに、がっつりPHPの話をした。ので、PHP分の補充には成功したと思ってる ドラ娘さんにドラを鳴らして欲しいばっかりに、ドラが鳴るのを待ってた おわりに クロージャって、名前は物々しいけど、実はそんなに難しくないよ! 身構えずに勉強してみてください。
PHPカンファレンス関西に参加してきました。 PHPカンファレンス関西 非常に面白いイベントでした! 以下、感想です。 基調講演+メインセッション Windows Azure Platformの話が聞けたのが収穫です。 Windows Azureについて、丁寧な説明と注意点を色々と聞くことが出来ました。 IISだから、PHPに限らず.NET系の言語も扱えるってのは大きいですね。 ツールでは、Windows Platform Installer(xamppみたいなもの)が便利そうでした。 「スマートフォンサイトの作成術」は資料必見です。 Webサイトは作れるけどスマートフォンサイトってどうすればいいの…?って人にオススメします。 ライトニングトーク Symfony2とBBDの話がメインでした。 いろいろなフレームワークや開発手法が紹介されていましたが、pinocoが少し色が違う感
※この記事は、PHPでできる関数型プログラミングの続きです。 はじめに 関数型プログラミングでは、一般に、 「関数呼び出し」「分岐」「戻り値」のみでプログラミングします。 ループを用いることはありません。 では、「配列の要素の合計を得る」といった、 配列の各要素を走査してその答えを得たい場合、どのようにすれば良いのでしょうか? これは、関数呼び出しの一種である「再帰呼び出し」を用いることで、実装することができます。 というわけで、やってみました。 例題 array_sum関数と同じ機能を持つ、my_array_sum関数を作成する 手続き的コーディング function my_array_sum_p($array) { // 合計値を0とする $sum = 0; foreach($array as $num) { // 配列の各要素を合計値に足し込む $sum += $num; }
はじめに 巷ではHaskellやScala, F#といった関数型言語が流行りつつありますね。 PHPでも5.3以降、ラムダやクロージャといった、関数型言語がもつ強力な機能が導入されてきています。 とはいえ、 「PHPで関数型ってできんの?」「そもそも関数型ってどんなだよ!」って思いますよね。 というわけで、やってみました。 取り扱う例題 1000未満の自然数のうち、3の倍数 もしくは 5の倍数 である数について、その総和を求めよ Project Euler の問題1をお借りしました。 Project Euler(英語) Problem 1 – PukiWiki(Project Euler – PukiWiki内) 手続き的コーディング <?php function projectEulerProblem1() { // 1000未満の自然数を持つ配列 $array_N_below_
このページを最初にブックマークしてみませんか?
『my-rest.icca.jp』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く