タグ

PHPに関するfaultierのブックマーク (17)

  • limonadeを試してみる第一歩 | UCWD-Studio

    今ちょうどPHPでの開発案件があって、CakePHPなどのWAFを使うほどの規模の案件じゃないんだけど、生PHPでプログラムを作成して無秩序なプログラムができるのは問題ですよねということで、いわゆるPHP製の小規模WAFを探してみた際に見つけたのがlimonade。 公式サイトによるとRuby製のSinatraやCampingなどからインスパイアされたフレームワークらしい。 以下、学習テストを兼ねて簡単に触ってみます。 githubからv0.4.6のzip版をダウンロード。他にもtgz版があったり、gitで落としてきたりが可能です。 公式サイトでは以降、 libフォルダを自分のプロジェクトに入てね。 自分のアプリケーションのメインとなるphpファイルにrequire_once vendors/limonade.php (or require_once lib/limonade.php)と書

    limonadeを試してみる第一歩 | UCWD-Studio
  • PHPの「えせプログラミング言語」の弊害 - moriyoshiの日記

    先日のエントリーでも少し触れたが、PHPの最大の問題点は、それが持つ「一見その言語構造がよくあるプログラミング言語の形をとりながら、プログラミング言語の最も大切なところを外している『えせプログラミング言語』である」点にある。Webアプリケーションの開発で注意すべき部分とは何かを根底の部分でちゃんと理解せずにPHPアプリケーションを作ると、後々ひどい目に会うので注意が必要である。 その意味では「PHPでプログラミング言語を学ぶ」などもっての他だし、「JavaでもPHPと同じようなプログラミング言語を作ってWebアプリの開発を効率化しよう」などという発想もとても危険である。 PHPの発想の根底には、「HTMLテンプレート用言語とロジック記述用言語の統一により、開発コストを減らそう」という CGI 時代の安易な発明がある。PHPは、その前近代的な発想を通じて、テンプレートとロジックを同じファイル

    PHPの「えせプログラミング言語」の弊害 - moriyoshiの日記
  • PHPの比較処理をRubyにも·ruby-php MOONGIFT

    PHPには不可思議な動作をするケースが多々ある。その仕様について嫌になるか、柔軟性があると感じるかで好き嫌いが分かれるような気がする。特に不可解なのが、文字列の比較だ。文字列と数字を比較したり、空文字がfalseになったりするのはとても危険な気がしてしまう。 RubyでもPHP的比較を だがPHPからRubyに移った人にすれば、この仕様が好きな場合もあるかも知れない。そんな時に使えるのがruby-phpだ。 今回紹介するフリーウェアはruby-phpRuby用のPHP風比較処理を可能にするライブラリだ。ソースコードは公開されているが、ライセンスは明記されていなかったのでご注意いただきたい。 ruby-phpを読み込むと、"99" == 99でtrueが返るようになる。また、"" == falseもtrueが返る。Webフォームやクエリーのパラメータで文字列が送られてきても、問題なく(?)

    PHPの比較処理をRubyにも·ruby-php MOONGIFT
    faultier
    faultier 2009/07/22
    ええと、マジレスすべきなのかこれは…いや、多分高度なジョークなんだよね…
  • 追記:PHP逆引きレシピについて - 肉とビールとパンケーキ by @sotarok

    前回の記事が、やはりタイトルとは怖いもので、むやみやたらと注目を集めてしまった。 で、「エラー制御演算子 @」にたいして、私が思っているものは、そう。もっとも、普段は感覚的にヤバいよなーというくらいでしか考えていなかったが、今回、この「感覚」には、どこかに論理的な背景があるはずである、という仮定のもと、自分自身の「感覚」を文章化をした結果、まあ、それなりに納得いく話ができた、というものであった。 しかし、勘違いしないでもらいたいのは、「PHP逆引きレシピ」というのは、はっきり言って、非常に良い だということだ。 ただ一つ、きになるところが、「@」に関する扱いであったというだけであり、それ以外は、他のPHP関連の書籍ではあり得ないほどに突っ込みどころの少なく、初心者がはまるポイント・見逃しがちなセキュリティに関する項目についてよく書かれた、よくできた書籍だ。 1冊を通して、すべてに対して完

    追記:PHP逆引きレシピについて - 肉とビールとパンケーキ by @sotarok
    faultier
    faultier 2009/07/22
  • PHP プログラマが "@" を使うべきでない 5 つの理由 - 肉とビールとパンケーキ by @sotarok

    #釣りっぽいタイトルですが大まじめです via. PHP 逆引きレシピ - 肉とご飯と甘いもの @ sotarok で、 @ (エラー制御演算子といいます!)はねーよ的な話をしましたが、著者の方から、「@に対して批判的になる理由が記載されていない」とのメールをいただきました。確かにその通りでした。実は理由を下書きのときには書いたのですが、長くなってしまったので削ってポストしたのですが、かえってわかりづらくなってしまいましたね.すみません。 ということで、PHPプログラマが、エラー制御演算子「@」使うべきでない 5 つの理由を述べます. 始める前に、質的なところ 色々理由はつけようと、やっぱり前回述べた、 終的に$qに入るものが同じであることと、コードとして同じ意味であるかは、別じゃないでしょうか。 が一番質的な話で、それ以上の話ではありません。 つまり、発生する可能性があるとわかってい

    PHP プログラマが "@" を使うべきでない 5 つの理由 - 肉とビールとパンケーキ by @sotarok
  • PHPの比較の素晴らしさ加減は正常

    if ("0x0A" == "10") { print '(´ε` )チュッ'; } チュッ。されちゃいます。 文字列であっても整数と解釈できる文字列の場合は勝手に型変換しやがる今世紀最大の愚行を犯してしまうってのは有名な話だよね。 文字列であっても整数と解釈できる文字列の場合は自動的に整数に型変換してくれる超便利機能があるってのは有名な話だよね。 だけどなんでコレが一致するかわけがわからんかった。 0x0Aは10進数で10になるので一致する。と、言いたいところなんですがそう単純な話じゃないんだ。 以下の例を目ん玉見開いて見て欲しい。 var_dump(0x0A); var_dump("0x0A"); var_dump((int)"0x0A"); var_dump((float)"0x0A"); var_dump(intval("0x0A")); 実行結果 int(10) string(4

    PHPの比較の素晴らしさ加減は正常
  • クラウドとHTML5にPHPが沈むとき - noopな日々

    インフラ・タグ仕様の両面からPHPの存在意義が問われているように思えます。 安価なインフラとの親和性、テンプレート志向、その双璧が意味をなさなくなってきそうです。 クラウドとPHP (特に日では)PHPはレンタルサーバーで最も利用しやすいプログラミング言語です。また、LAMPによる開発ノウハウが充実していますので、カジュアルな開発者がもっとも手にしやすい言語と言えそうです。 レンタルサーバーでのリソースがクラウドに移行しようとしている現在でも、たとえばGoogle App Engine上でPHPは実行可能で、Amazon S3,EC2へアクセスする機能を提供しているPHPフレームワークもあります。とはいえ、クラウド上での実装を考えると、関数型言語の方が向いているのは明らか。その意味では、Pythonのように関数型に近い言語の方が向いています。 レンタルサーバー上でPHPを使うにしてもそれ

    クラウドとHTML5にPHPが沈むとき - noopな日々
  • mod_access_tokenをPHPから使ってみる - maru.cc@はてな

    mod_access_tokenとは ウェブサイト上の画像やファイルに有効期限を指定して、ユーザーに一時的なダウンロードを許可する、ライブドアで独自開発したApacheモジュールです。このモジュールをApache Webサーバに組み込むことにより、画像やファイルをウェブ上で公開するときに有効期限をつけることができるようになり、Webアプリケーションと組み合わせる事で公開範囲の制御を行なう事が可能になります。 ソースコードはこちらから入手できます。 modaccesstoken - Secure downloading module for Apache2 - Google Project Hosting livedoor ラボ「EDGE」 開発日誌 : 「mod_access_token」の配布開始と「EDGE src」公開のお知らせ - livedoor Blog(ブログ) ファイルのア

    mod_access_tokenをPHPから使ってみる - maru.cc@はてな
  • PHP に「次の言語」なんていらない - kなんとかの日記

    PHP は、ほぼすべてのホスティングサーバで使えるといっても過言ではない。PHP の普及率は非常に高い。 また PHP には、WordPress や XOOPS や phpMyAdmin など様々な application が作られている。そのおかげで、PHP は知名度も非常に高い。 さらには、PHPYahoo!楽天やサイボウズや SugarCRM など、大規模な業務システムでも使われている。つまり、PHP は実績でも申し分ない。 さて、ここで質問だ: 普及率も知名度も実績もある PHP に、「次の言語」なんて必要だろうか。正直、PHP だけで十分ではなかろうか。 とはいえ、実際には PHP で書けるのはサーバサイドだけなので、クライアントサイドのために JavaScript は必要。データベースやるなら SQL も必要。でもそれ以外の言語は勉強する必要ないと思う。 へたに Ru

    PHP に「次の言語」なんていらない - kなんとかの日記
    faultier
    faultier 2008/07/24
    「シェフは盛り付けを学ぶべきで、調理法なんて自分が使うものだけ知ってればいい、他ジャンルの料理を学ぶのはただの料理マニア」ですか? / UIのセンスも技術力は両輪。別に対立しないし、両方必要。
  • PHPでTwitterのBotを作ってみる - yuyarinの日記

    Twitterで自分のタイムラインに表示されたメッセージにキーワードを見つけたら、何か反応を投稿するボットを作ってみる。 仕様 /homeと/repliesからメッセージを1ページ取得する。 メッセージにキーワードがあれば対応するメッセージを投稿する。 repliesを優先してレスする。 実装 PEAR::HTTP_Clientを使う。コードは結構な量になってるので、要所だけ書く。 class TwitterBotとして実装。 require_once "HTTP/Client.php"; タイムラインの取得 Twitterはベーシック認証のみを正式サポートしているのでPEAR::HTTP_Clientでベーシック認証を行う。 $basic = array('Authorization'=>'Basic '.base64_encode($this->username.':'.$this->

    PHPでTwitterのBotを作ってみる - yuyarinの日記
  • Php Object Generator (v3.0d) - Open Source PHP Code Generator

    Account Suspended This Account has been suspended. Contact your hosting provider for more information.

    faultier
    faultier 2007/07/28
    コードジェネレータ
  • 【レポート】PHP版Ruby on Rails? - DB操作クラスを自動生成する"PHP Object Generator" | エンタープライズ | マイコミジャーナル

    PHPのソースコードを自動生成するWebアプリケーションであるPHP Object Generatorの最新版「PHP Object Generator (以下、POG)3.0」が26日(米国時間)、公開された。PHPで開発されたWebアプリケーションで、The BSD Licenseのもとで公開されている。POGでは、クラス名とアトリビュートを指定することで同データを操作するためのPHPクラスが生成される仕組みになっている。PHP4/PHP5アプリケーションで動作するコードが生成される。 対象とするPHPのバージョン、クラス名、操作するアトリビュートを指定して操作するコードを自動的に生成させる POGはもともと、データベースにアクセスするコードを自動生成することで開発時間を削減することを目的として開発された。データベースにアクセスするためのコードはアプリケーションごとに異なるが、結局似た

    faultier
    faultier 2007/07/28
    詳しくみてないけど、RoR…?
  • 続・Railsの画面生成を10倍高速化する方法: フィルタ編 - 世界線航跡蔵

    さて、昨日は SSIとの組み合わせでPageキャッシュの適用範囲を広げる話 をした。 なぜSSIかというと、これは組込みの手軽なフィルタ機構だからだ。Apache 1系統ではSSIはハンドラとして実装されているけれども、2系統では新たにフィルタ機構が加わって、SSIはこちらで再実装されている。 フィルタ機構ならmongrelからの出力にも加工できる。Pageキャッシュとキャッシュでないものを透過的に扱えてうれしい訳だ。 ただ、確かにちょっとDRYさに欠ける。どうせならRailsのレイアウトファイルにPHPコード片を直接書きたいではないか。で、これを出力するとPHPとして処理してその結果がクライアントに伝わる、と。 id:yamazさんが「 rhtmlで直接phpを吐き出して処理する方法を模索したいのです。 」と言ってるのはたぶんそういうことだ。私もそれが理想だと思う。今日はそれに挑戦してみ

    続・Railsの画面生成を10倍高速化する方法: フィルタ編 - 世界線航跡蔵
  • Railsの画面生成を10倍高速化する方法 - 世界線航跡蔵

    RailsでPageキャッシュをより広く活用する方法を考えてみました。以下、ちょっと長く前置きが続きます。 Rails遅杉 Railsは遅い。何が遅いって、Rubyが遅くてRoutingが遅くてRDBとRHTMLが遅い。RDBが遅いのは大抵のWebアプリケーションでは変わらない話、で、だからRailsなんかが評価される余地があるんだよね。RubyやRHTMLの遅さは柔軟性の代償として受け入れよう。なにしろRDBがもともと遅いんだから。ただ、Routingは無駄に高機能だったりして頭にくる。Rhino on RailsのSteve YeggeもRoutingは黒魔術だと言っていたし。私はActionPackの全てが黒魔術だと思うけど。 そういう訳で、RoutingをCで書き直すのはドリコムのみなさんがいつかやってくれると期待するとして(可能なら手伝いたいけどね)、当面の対応としてはキャッシュ

    Railsの画面生成を10倍高速化する方法 - 世界線航跡蔵
  • Ajax,Apache,CSS,CVS,HTML,JS,Perl,PHP等のチートシートまとめ:phpspot開発日誌

    Smashing Magazine Blog Archive Cheat Sheet Round-Up: Ajax, CSS, LaTeX, Ruby… Ajax,Apache,CSS,CVS,HTML,JS,Perl,PHP等のチートシートまとめが紹介されてます。 チートシートって印刷して貼っておくとほんとに便利でお世話になってます。 Ajax関連 What’s Ajax? Cheat Sheet - PDF Prototype Dissected - Cheat Sheet PNG scriptaculous Combination Effects - Cheat Sheet - PDF Apache関連 Apache Cheat Sheet Apache 1.3 Quick Reference Card - free quick reference cards - PDF htacc

  • MacOSX - php5 のインストール

  • PHP: PHP マニュアル - Manual

    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

    PHP: PHP マニュアル - Manual
  • 1