こんにちは。小川です。 本日は数あるPHPの関数の中でも、わりと知られてそうで実は知らない人もいるかもしれない便利な関数をご紹介します。 ■nl2br 改行コードを<br />に変換する関数です。 <?php $string = <<<EOS foo bar baz EOS; echo nl2br($string);

When a string is literal (contains no variable substitutions), the apostrophe or "single quote" should always be used to demarcate the string: $a = 'Example String'; When a literal string itself contains apostrophes, it is permitted to demarcate the string with quotation marks or "double quotes". This is especially useful for SQL statements: $sql = "SELECT `id`, `name` from `people` WHERE `name`='
皆さん、こんにちは。笹亀です。 MacBookAirの発表&発売やiPhone4の白の発売日が再々延期ということでいろいろな出来事がありました。白を待っていた自分にとっては残念なのと黒を買ってしまおうかと悩んでいます。 さて、本日は今まで何気なくセッションを使用していましたが、実際にファイルベースのセッションのやりとりでファイルが作成されるタイミングはどこなんだろう?っと疑問に思い、実際にPHPのセッションの作成されるファイルの流れについて調べてみました。 本日はその流れについてご紹介をさせていただきます。 PHPでセッションの情報の流れを調べるにはPHP本体のソースをみるのもいいですが、手軽に確認するために「session_set_save_handler」関数で調べることにします。 ※所々にデバック確認用に出力しております。 <?php function open($save_path
PHPを実行した際に変数の中身やデータベースに発行したSQLの結果を見たい場合にとても便利な「dBug」を覚書。 「dBug」は、PHPのコードに1行記述するだけで、指定した変数の中身をブラウザに表示してくれます。 これだけだったら"print_r"で良いのでは?と思いますが、"print_r"と違って「dBug」はかなり見やすく表示してくれます。 PHPのデバッグツールについて PHPのデバッグについては、「PDT(eclipse php)」や「VS.Php」(有料)、FireFoxのアドイン「Xdebug Helper」、「FirePHP」などがありますがが、デバッグ環境を構築するまでに手間や時間がかかったり、開発環境に慣れていない人やPHP初心者(私のような)には、ちょっと敷居が高かったりします。 その点「dBug」は、変数の中身を見るだけならとても簡単です。 以下に「dBug」の使
Posted on 7月 19, 2006 Filed Under PHP | CSVのインポート機能を持ったシステムをPHP4環境からPHP5環境へ移行したら、 なぜかCSVデータを正しく読み込んでくれない。っていうか一文字目が文字化け。 超悩んだあげくぐーぐるさんで検索しても以下のような記事しかみつからず。 [PHP-dev 1205] PHP5のfgetcsv()関数について 人力検索はてな - PHP4からPHP5へソースの移(長いので略) csvファイルを読み込むと1バイト目の日本語が文字化け 3つ目の掲示板のyossyはあたくし自身なんですが・・・。 setlocaleとかいろいろ試してもしても結局読み込まれるCSVの文字コードは ほとんどSJISなせいなためかなんだかうまくいきません。 ちなみに検証環境はほぼFedoraCore4のデフォルトです。 PHPは5
閉じタグってのは「?>」のことね。未だに閉じタグ使ってるコードを見ると一瞬ドキッとするんだよね。(自分の昔のコードも含むw) いや、ちゃんとわかってて確実に使いこなしてるならいいんだけどたまに -- ここがファイルの先頭 -- <?php class Foo { // いろいろ } ?> -- ここがファイルの後尾 -- みたいな感じで閉じタグの後に改行コードが一つ入ってたりするのを見ると「あわわわ」ってなっちゃう。 実際には改行一つだけなら問題は出ない、PHPは閉じタグの直後の改行を消してくれるからね。 問題は改行が二つ以上あった場合だ。これは悲惨なことになる。PHPは閉じタグ以降のデータ(というか範囲外のデータ)は全部HTMLとして出力される仕様なので、改行コードが表示されちゃう事態に。 表示されちゃうっていうのは語弊があるか、元々PHPはHTMLに埋め込むための言語なのでの範囲外の文
GT Nitro: Car Game Drag Raceは、典型的なカーゲームではありません。これはスピード、パワー、スキル全開のカーレースゲームです。ブレーキは忘れて、これはドラッグレース、ベイビー!古典的なクラシックから未来的なビーストまで、最もクールで速い車とカーレースできます。スティックシフトをマスターし、ニトロを賢く使って競争を打ち破る必要があります。このカーレースゲームはそのリアルな物理学と素晴らしいグラフィックスであなたの心を爆発させます。これまでプレイしたことのないようなものです。 GT Nitroは、リフレックスとタイミングを試すカーレースゲームです。正しい瞬間にギアをシフトし、ガスを思い切り踏む必要があります。また、大物たちと競いつつ、車のチューニングとアップグレードも行わなければなりません。世界中で最高のドライバーと車とカーレースに挑むことになり、ドラッグレースの王冠
自分自身も気になってはいたのですが、試してみるきっかけがなく今に至ってしまいました。現在のプロジェクトではviewは関わらないのですが、それまではSmarty2を使っていました。Smarty3や他テンプレートエンジンも気になるところですが、次はTwigがくるだろうと勝手に予測しています。 簡潔に書ける テンプレート指向文法である 自動エスケープなど必要なものをすべてサポートしている 文法を簡単に学習できる(※他テンプレートエンジンはPHP4ベースで作られていたりして、web開発においてベストプラクティスとして採用できない。) 高い拡張性で独自DSLも作れる ユニットテストされているのでライブラリは堅牢で、大きなプロジェクトにもすぐに使える。 ちゃんとドキュメント化されている: セキュリティでは自動出力エスケープやsandboxモードによって安全性を確保 詳細なエラーメッセージでデバッグもカ
このページについての説明・注意など PHP は、Apache モジュールや、CGI、コマンドラインとして使用できるスクリプト言語です。このページでは、主に PHP における、Web アプリケーションのセキュリティ問題についてまとめています。 Web アプリケーションのセキュリティ問題としては、以下の問題についてよく取り挙げられていると思いますが、これらのセキュリティ問題について調べたことや、これら以外でも、PHP に関連しているセキュリティ問題について知っていることについてメモしておきます。 クロスサイトスクリプティング SQL インジェクション パス・トラバーサル(ディレクトリ・トラバーサル) セッションハイジャック コマンドインジェクション また、PHP マニュアル : セキュリティや、PHP Security Guide (PHP Security Consortium) には、PH
前回のエントリで、「 なんで世にあるアプリケーションは1バイトで済むUTF-8を3バイト表現でもOKなんて勘違いをするの?」って書いたけど、なんでかを考えてみた。 きっかけは、コメント きっかけは、id:kick123からもらったコメント 「C2〜DFはC0〜DF?」ってところですが、1バイトで表現できるのは7ビットまでで、80を表現するには8ビットが必要です。 2バイト表現にあてはめるなら、「1100 0010」と「1000 0000」になり、1バイト目はC2になる。 ってことではないですか? これ、最初「???」って感じだったんです。 理解するために、とりあえず「UTF-8で1byteで表せる文字一覧」を作ってみる。 utf-8_mapping_1byte posted by (C)ITOH Takashi これ出すのに使ったプログラムは、PHPで <?php for ($i=0; $
GT Nitro: Car Game Drag Raceは、典型的なカーゲームではありません。これはスピード、パワー、スキル全開のカーレースゲームです。ブレーキは忘れて、これはドラッグレース、ベイビー!古典的なクラシックから未来的なビーストまで、最もクールで速い車とカーレースできます。スティックシフトをマスターし、ニトロを賢く使って競争を打ち破る必要があります。このカーレースゲームはそのリアルな物理学と素晴らしいグラフィックスであなたの心を爆発させます。これまでプレイしたことのないようなものです。 GT Nitroは、リフレックスとタイミングを試すカーレースゲームです。正しい瞬間にギアをシフトし、ガスを思い切り踏む必要があります。また、大物たちと競いつつ、車のチューニングとアップグレードも行わなければなりません。世界中で最高のドライバーと車とカーレースに挑むことになり、ドラッグレースの王冠
_既にあたり前になりつつある文字エンコーディングバリデーション 大垣靖男さんの日記「何故かあたり前にならない文字エンコーディングバリデーション」に端を発して、入力データなどの文字エンコーディングの妥当性チェックをどう行うかが議論になっています。チェック自体が必要であることは皆さん同意のようですが、 チェック担当はアプリケーションか、基盤ソフト(言語、フレームワークなど)か 入力・処理・出力のどこでチェックするのか という点で、さまざまな意見が寄せられています。大垣さん自身は、アプリケーションが入力時点でチェックすべきと主張されています。これに対して、いや基盤ソフトでチェックすべきだとか、文字列を「使うとき」にチェックすべきだという意見が出ています。 たとえば、id:ikepyonの日記「[セキュリティ]何故かあたり前にならない文字エンコーディングバリデーション」では、このチェックは基盤ソフ
こんにちは、亀本です。アシアルも技術者の人数がそこそこ増えてきて、技術ブログの当番が回ってくるまで日数がかかるようになったためか、久方ぶりのブログです。 さてさて、今回はちょっとツール使う系の話です。 ちょっと前にPHP勉強会で「phpUnderControl」というツールの事が話題に上がっていたのを見たのですが、これが個人的にはなかなか惹かれるツールでした。 phpUnderContorl とは phpUnderControlとは、「継続インテグレーション」というアジャイル開発手法(厳密には、アジャイルで提唱されたというより昔からあった概念のようです)を実現するための自動ビルド/テスト/開発支援ツールです。 PHPはビルドいらずのスクリプト言語なので、自動ビルドと言われても( ゚Д゚)ハァ?って感じですが、phpUnderControlは単純なビルドにとどまらず、色々な事をやってくれます
早速ですが、はじめてのZendFrameworkのアプリケーションを作ってみましょう。 何事をはじめるにも最初は簡単なことからはじめるのが一番です。ゲストブックと呼ばれるアプリケーションを作ってみましょう。 ゲストブックとは 旅館やペンションにて、宿泊客が思い思いの感想を書くノートなどを見かけたことがありませんか? 感想を書いたことがある方もいることでしょう。このノートはゲストブックと呼ばれています。 ゲストブックは設計が非常にシンプルなのでコンピュータアプリケーションの入門アプリとして広く利用されています。この連載でも最初のアプリケーションはゲストブックにします。 フレームワークなしのゲストブックアプリ Zend Frameworkを利用したゲストブックアプリケーションを期待されているかもしれませんが、ちょっと我慢してください。まず最初に、通常のPHPアプリとして作られたゲストブックアプ
投稿するメッセージは rawurlencode() でエンコードする。メッセージにスペース(空白)があると、そこで切れてしまうから。 PHP5以上 <?php $url = "http://twitter.com/statuses/update.xml?"; $username = your username; $password = your password; $params = "status=". rawurlencode(message); $result = file_get_contents($url.$params , false, stream_context_create(array( "http" => array( "method" => "POST", "header" => "Authorization: Basic ". base64_encode($user
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く