タグ

phpに関するkmachuのブックマーク (60)

  • PHP: The Right Way

    ようこそ 時代遅れの情報がウェブ上にあふれている。そんな情報を見たPHP初心者は戸惑ってしまうだろう。そして、まずい手法やまずいコードが広まってしまう。 そんなのはもうやめよう。PHP: The Right Way は気軽に読めるクイックリファレンスだ。PHPの一般的なコーディング規約、 ウェブ上のよくできたチュートリアルへのリンク、そして現時点でのベストプラクティスだと執筆者が考えていることをまとめた。 大事なのは、 PHPを使うための正式なお作法など存在しない ってこと。 このサイトの狙いは、はじめて PHP を使うことになった開発者に、いろんなトピックを紹介すること。 経験豊富なプロの人にとっても、これまで深く考えることなく使ってきた内容について、新鮮な見方を伝えられるだろう。 このサイトは、決して「どのツールを使えばいいのか」を教えるものじゃない。 いくつかの選択肢を示して、それぞ

    kmachu
    kmachu 2012/07/15
    モダンなPHPの書き方。(当分書くことはないけど)良さそう。
  • プログラミング言語の優秀さと道具としての評価は別 - kなんとかの日記

    ワシは、cgi.rb なんかが標準添付になっている RubyPHP を dis る資格はないと思ってる (cgi.rbの元ネタである CGI.pm を擁する Perl も同じじゃないかな)。cgi.rb は、標準添付モジュールのくせにコードが汚いし遅いし、cgi[] の戻り値が String だったり File だったりするし、どう考えても設計ミス。 ## Ruby だと cgi = CGI.new p cgi['name'] #=> これが File である可能性がある ## PHP だとそんな問題はない $name = $_REQUEST['name']; # 必ず文字列 $file = $_FILE['name']; # ファイルは別途取り出すそして大半の Rubyist はこういった問題に気づいてすらいない。そういう人たちが PHP を dis ってるのは「ハァ?」と思う。

    プログラミング言語の優秀さと道具としての評価は別 - kなんとかの日記
    kmachu
    kmachu 2010/06/13
    「確かにプログラミング言語としての Ruby や Python は本当によくできてるけどさ、それと道具としての価値はまた別だということを知ってほしい」
  • PHP6開発 UTF-16化を断念、5.3へロールバック | エンタープライズ | マイコミジャーナル

    PHP: Hypertext Preprocessor PHPの次期メジャーバージョンはPHP6になるとみられてきたが、問題を打破するために開発ブランチを5.3ベースへ巻き戻すという対処が実施された。Rasmus Lerdorf氏がphp.internals: PHP 6においてPHP6 Unicodeの実装が失敗したことを伝えている。PHP6ではエンジン内部の処理がUTF-16に統一される計画になっていたものの、関係者からはこの方針は間違っているのではないかという指摘もあった。今回実装が行き詰まったことで、PHPはUnicodeに対して新しいアプローチをとることになる。 このあたりの事情がFuture of PHP 6 - Johannes Schluterにまとまっている。紹介されている内容をまとめると次のとおり。 これまでの取り組み PHP6で取り組む基的な内容として、PHPエンジ

    kmachu
    kmachu 2010/03/17
    時には引き返す勇気も重要 / Javaと同じ処理方式だよね?だとしたらなんでだろう。
  • PHPの言語仕様がウンコな理由個人的トップ10 - kなんとかの日記

    PHPerの問題点はPHPしか知らずに的外れなことを言うことだ」と、Javaしか知らなくて的外れなことを言っている連中にすら言われちゃってるPHPerのみなさん、こんにちは。 PHPは「使える道具」であることは事実です。しかし同時に言語仕様がウンコなのも事実。 ここでは、個人的にウンコだと思っているPHPの仕様を挙げてみたよ! htmlspecialchars() の名前が長すぎる これはほんとウンコ。おまえWebアプリのための言語やろが!なんでこの関数の名前がこんなに長いねん!こんだけ長かったらめんどくさがって echo $var としてまうやろが!WordPressのthemeでHTMLエスケープ忘れが多いのはおまえの名前が長すぎるせいだ! そんなわけで、全PHPerはこんな関数を定義するといいと思うよ。 ## echo $var; よりも短く h($var); と書ける! func

    PHPの言語仕様がウンコな理由個人的トップ10 - kなんとかの日記
    kmachu
    kmachu 2009/11/29
    h()はぜひ導入してほしいなー
  • 教科書はいらない - 書評 - PHP逆引きレシピ : 404 Blog Not Found

    2009年07月06日14:30 カテゴリ書評/画評/品評Lightweight Languages 教科書はいらない - 書評 - PHP逆引きレシピ 翔泳社片岡様より献御礼。 PHP逆引きレシピ 鈴木憲治 / 安藤建一 / 山田直明 / 八木照朗 / 山義之 / 河合勝彦 ある意味実にPHP的な一冊。PHPは、これ一冊あれば十分だと強く感じた。 PHPを使うにしても、使わないにしても。 書「PHP逆引きレシピ」は、「PHPでプログラミングを習う」のではなく、「PHPで動くWebサイトを作る」に徹した一冊。PHPは後者に特化した言語である故に、前者には徹底的に向かない。書を読めば、PHPを全く知らないプログラマーにもそれがわかるし、PHPを日時使っている人も、そのことが改めてわかるはずだ。 目次 - | PHP逆引きレシピ オフィシャルサポート より 第1章 準備 1.1 サー

    教科書はいらない - 書評 - PHP逆引きレシピ : 404 Blog Not Found
    kmachu
    kmachu 2009/08/04
    「「プログラミング言語を覚えなければ動くWebを作れない」というのがプログラマーの傲慢であることを証明したのもPHPだった」
  • PHP 5.3の無名関数を試してみた - hnwの日記

    何番煎じかわからないですが、PHP 5.3からは無名関数が実装されたということで、試しに使ってみました。 見なくても何となく使えるようなものだと思いますが、ドキュメントが「PHP: 無名関数 - Manual」にありますので、ざっと目を通した方がいいと思います。 僕は「どうせ無名関数って中身はcreate_functionなんでしょ?」と思っていたんですが、Closureクラスを使って実装されているなんてことも書いてあります。PHPにしてはマトモっぽくて意外に感じました。 コールバック関数としての無名関数 PHPには引数としてコールバック関数を要求する関数がありますが、PHP5.3.0からは無名関数を引数にしても動くようになりました。 無名関数は、普段の関数と同じノリで「function」から書き始めればOKです。関数宣言との違いは関数名を書かない点だけで、引数やタイプヒンティングについて

    PHP 5.3の無名関数を試してみた - hnwの日記
  • 「はじめてのPHPプログラミング基本編5.3対応」のゆるいところ(1) - データベースファイルは公開ディレクトリに格納すべきではない

    先日の日記書籍「はじめてのPHPプログラミング基編5.3対応」にSQLインジェクション脆弱性 - 徳丸浩の日記(2008-10-29)にて、はじめてのPHPプログラミング 基編―5.3対応を取り上げた際に、『その「ゆるさ」のゆえんはおいおい報告する』と予告していた。書くネタは決まっていたのだが、多忙のために果たせていなかったが、今日から少しずつ報告しよう。まずはデータベースの格納場所についてだ。 書ではSQLの説明にSQLiteを使用している。SQLiteは、常駐サービス/デーモンがなく、アクセスライブラリが直接単一のデータファイルを参照する実装となっていて、早い話がACCESS(.mdb)のような実装だ。このデータファイルの置き場所が問題だ。 書には、以下のような記述がある。 現時点でindex.phpSQLiteのデータベースファイルminiblogが同じディレクトリに存在し

    「はじめてのPHPプログラミング基本編5.3対応」のゆるいところ(1) - データベースファイルは公開ディレクトリに格納すべきではない
    kmachu
    kmachu 2008/11/09
    今での公開ディレクトリにしかファイルをおけないレンタルサーバは多いのかな?レンタルサーバでもホームディレクトリと公開ディレクトリは分けておいてほしい。さくらのサーバは分かれてた。
  • 書籍「はじめてのPHPプログラミング基本編5.3対応」にSQLインジェクション脆弱性 - 徳丸浩の日記(2008-10-29)

    id:hasegawayosuke氏にそそのかされるような格好で、「はじめてのPHPプログラミング基編5.3対応」という書籍を購入した。 書は、ウノウ株式会社の下岡秀幸氏、中村悟氏の共著なので、現役バリバリのPHP開発者が執筆しているということ、下記のようにセキュリティのことも少しは記述されているらしいという期待から購入したものだ。 目次から抜粋引用 07-07 Webアプリケーションのセキュリティ [セキュリティ] 08-04 データベースのセキュリティ [SQLインジェクション] 09-13 セキュリティ対策 [セキュリティ] 書をざっと眺めた印象は、「ゆるいなぁ」というものであるが、その「ゆるさ」のゆえんはおいおい報告するとして、その経過で致命的な脆弱性を発見したので報告する。 問題の報告 それは、書P280に登場する「SQLインジェクション対策用の関数(dbescape)」

    kmachu
    kmachu 2008/10/30
    「暗号を自作するな!」と問題の構図が似ている。 / こういう指摘がWebで読めるのはいいなぁ。 / ライオンの絵がかわいい。
  • 第1回 世間で噂されるPHP最適化tipsについて検証する | gihyo.jp

    はじめに PHPに関する話題の中では、PHPコードをどのように書けば最適化されるのかに関するtipsがブログなどでもたびたび話題に出てきています。しかし、このようなtipsが当に有効なのか、どうして有効なのか解説している記事は少なく、その信憑性は気になるとこです。 そこで、PHP最適化tipsについて紹介している記事、 63+ best practice to optimize PHP code performances 上記記事の日語訳記事 PHP コード最適化 Best Practices 63+ をもとに、いくつか抜粋して検証していきます。 PHPソースコードの入手 やはり、内部の動きを知るにはソースコードを読むのが一番です。稿でもソースコードをもとに解説を行います。 http://jp.php.net/downloads.php こちらから最新版のソースコードが入手できます。

    第1回 世間で噂されるPHP最適化tipsについて検証する | gihyo.jp
    kmachu
    kmachu 2008/10/07
    無視できる範囲内の違いという結論かな / ソースを読むという意味で役に立ちそう
  • ユーザーとしてのPerl,Ruby,PHP.....

    ここ最近、はてブ経由でRubyとかRailsネタをすっかり見なくなってしまった感が。 さわり始めた人が普通に使い始めたからネタがなくなったのか、ちょっといじってみて飽きたのか、どっちなのかが気になる。定着してれば良いんだけどね。 で、こんな話が久しぶりに。 いい加減Ruby信者がうざい件 - id:k-z-h こういうネタがあると注目される点がわかりやすく覚えられたりするので、こういうのも結構楽しいし、何よりはてなっぽいし。 Webにおいてプログラミング言語に求められていることに大した違いがないというのはポイントか。 結局は、Apacheから入力が渡ってきてWebからのリクエストを受け取って、DBSQLやりとりして、アウトプットを整えてリターンするのに使われる部分ですから、使い勝手と、その辺のセットアップと管理のしやすさと、一番、大事なスケーラビリティが確保できれば最低限OKかなと。 (

    kmachu
    kmachu 2008/09/26
    「一台のサーバで、それなりに負荷を与えるphpとfcgiが共存するのがなんかキツイなーとかね」←PHPをFastCGIで動かすか、プロキシを使うといいんじゃないかな?
  • CentOS/qmail + vpopmail/vpopmail 設定 - ひつじ帳

    AWSの無料利用枠のアカウント作成の手続きの方法です。 アカウント作成した日は、 2020年08月10日 です。 Amazon AWS 無料利用枠についての概要です。 AWS 無料利用枠 事前準備 登録には以下の準備が必要です。 クレジットカードまたはデビットカード(無料利用...>

  • http://www.machu.jp/posts/20080917/p01/

    kmachu
    kmachu 2008/09/17
    変に普及するとまずいので書いてみました。というわけでセルクマ。
  • 業界最大級のライブチャットDXLIVE

    9月14日(水)午前5時~5時30分(日時間)に、サイトのメンテナンスを行ないます。その間は、一時的にチャットが中断される場合がございます。メンテナンス期間は、作業状況により多少前後することもございます。ご利用の皆様にはご迷惑をおかけ致しますが、ご理解ならびにご協力の程、何卒宜しくお願い申し上げます。 日時間午後10時30分頃から午前零時頃までの間、チャットに繋がりにくい状態がありましたが、現在は解決しています。ご利用されている皆様には大変ご迷惑おかけいたしましたことをお詫び致します。 9月6日(水)午前4時30分(日時間)より約1時間、サイトのメンテナンスを行ないます。その間は、一時的にチャットが中断される場合がございます。メンテナンス期間は、作業状況により多少前後することもございます。ご利用の皆様にはご迷惑をおかけ致しますが、ご理解ならびにご協力の程、何卒宜しくお願い申し上げます

    業界最大級のライブチャットDXLIVE
    kmachu
    kmachu 2008/09/15
    すばらしいエントリ!ちゃんと自分で学ぼうとしているところが偉い。
  • おまいらもっとextract()使い倒せ!! - elf's blog

    http://www.machu.jp/diary/20080906.html#p01 いやいや.extract()は便利な関数です.使うのをやめるのはもったいない. もう少しだけ覚えることができちゃいますが,少しだけなのでそれを覚えてextract()をもっと使い倒しましょう. 決め事 1個だけルールを追加してしまいましょう.それができればextract使い放題です.下記はそのルールの一例です. 大文字アルファベット1文字とアンダーラインで始まる変数名(例えば「P_」,「G_」,「S_」)はextract専用 例えば「$S_foo」,「$S_bar」といった変数名はextract()で作成される変数の名前として予約し,自分で設定はしないようにします. 実際のコード 上記を併用し,extract()には第2引数に必ずEXTR_PREFIX_ALL,第3引数に大文字アルファベットを追加します

    おまいらもっとextract()使い倒せ!! - elf's blog
    kmachu
    kmachu 2008/09/08
    extractを使うときのルール。でもやっぱり利用シーンが見えない…。$_GET['name']じゃなくて$G_nameと書けた方がいいことってあるのかなぁ?
  • PHP4終了。PHP5.2系以降へ | 秋元@サイボウズラボ・プログラマー・ブログ

    2007/12/31にサポート終了となっていたPHP4.4系が、日2008/08/08をもって完全に終了となった。今日から後は、基的(*1)にPHP4を使うべきではないだろう。新規開発はもちろんPHP5.2以上ではじめるべし。 「残っていた大きな問題に対処した」PHP4.4.9が日リリースされている。どうしてもPHP5.2.xに移行できないPHP4のサーバがある場合は、せめてこちらへの入れ替えは行なうべき。 ‘*1) この先PHP4系は処理系に変化が無くなるので、PHP処理系のソースコードに自分で手を入れられるようなヘビーユーザーでない限り この記事は移転前の古いURLで公開された時のものですブックマークが新旧で分散している場合があります。移転前は現在とは文体が違い「である」調です。(参考)記事の内容が古くて役に立たなくなっている、という場合にはコメントやツイッターでご指摘いただけれ

    kmachu
    kmachu 2008/09/08
  • PHPな人は本当にPHPしか知らないのか - ひがやすを技術ブログ

    言語を比較するためには他の言語についてのある程度の知識が必要だろう。 Perlを知らずしてスクリプト言語を深く語るのは難しいし、 Lispの知識なくRubyを深く語ることは難しい。 Pythonは? うーん、PythonにはPythonの知識だよね(笑) たとえばPHPしか知らないとしたら、PHPの欠点を指摘されると自分のやり方全体が 否定されたと感じるのではないだろうか。 Matzのエントリが原因ではないと思うけど、「PHPの人はPHPしか知らない」というイメージがなんとなくあるよね。でも、そのイメージは間違っていることを今日この場で宣言しておく。 昨日、PHPカンファレンスのパネルディスカッションに出たんだけど、そこで、会場の人にどれくらい他の言語を使ったことがあるか聞いてみた。数字はうろ覚えだけど。 Perlは70%くらい Rubyは80%くらい Pythonは70%くらい Java

    PHPな人は本当にPHPしか知らないのか - ひがやすを技術ブログ
    kmachu
    kmachu 2008/07/23
    どの言語でも「お仕事でやるだけの人」と「より深い知識を求める人」がいて、「○○しか知らない」と言われるのは前者でカンファレンスに来る人は後者。PHPやJavaはユーザ数が多いので後者が目立つのかもしれない。
  • ギークなお姉さんは好きですか CoolなURLを作るには

    kmachu
    kmachu 2008/07/06
    「$id を $name に変えるなどして」←本題じゃないけど文字列($name)をSQLに連結した時点でSQLインジェクションが再発すると思った。もしかしてprepared statementが使えない環境? see: http://tinyurl.com/5z9dot
  • 【CakePHP】OpenIDをAuthComponentにトッピングしてみる | ねねとまつの小部屋

    by 赤がすき Published 6 月 30th, 2008 in AuthComponent, OpenID, PHP, cakephp | (12) (0) (1) (0) Total: 13 第3回CakePHP勉強会にて、LTした内容と関連するソースを公開します。 | View | Upload your own AuthComponennt+OpenID OpenIDに対応した会員制サイトを以下の組み合わせでさくっと作る PHP OpenID Library OpenID component for CakePHP AuthComponent 今回作成するアプリケーションの仕様 出来るだけコードを書かない方向で、動くものを作成 modelはひとつ OpenIDで認証されたユーザは、Cakeアプリに自動ログイン OpenIDで認証されたユーザは、初回のみ、次の要領

  • LAMPのPをPHPからPerl/Python/Rubyに替えるだけではセキュリティは向上しない証拠

    (Last Updated On: 2008年4月3日)誤解を招く記事 – LAMPセキュリティを強化する4つの方法で紹介した記事ように、最近「言語を替えるとセキュリティが向上する」といった間違った認識が広まりつつあるように思えます。 結論からいうと、セキュリティに関連する機能が同等な言語であれば「言語を替えるとセキュリティが向上するいう考え」は妄想です。言語を替えても、正しいセキュリティ知識を持ち合わせた開発者が開発しないと、危ないアプリケーションが簡単に作れます。 ちょうど良い証拠となるPloneのCVEエントリが公開されています。PloneはPythonで記述されたCMSです。私も利用したことがありますが、なかなかよくできているCMSです。出来立てのCMSではなく何年も前から実用されています。フレームワークとしてPythonのWebシステムよく利用されているZopeを利用しています。

    LAMPのPをPHPからPerl/Python/Rubyに替えるだけではセキュリティは向上しない証拠
    kmachu
    kmachu 2008/04/03
    「セキュリティに関連する機能が同等な言語であれば」←コメント欄に補足(こっちが本文?)が。
  • 例えば、PHPを使う - novtan別館

    そのハードルの低さが売りな部分を持って拡大したのであれば、手っ取り早くハードルを上げるには、ハードルを高いものに変える事だ。なんてね。 IIS+ASP(ActiveServerPage)で書かれたサイトだって相当おかしなコードが多くてヨワヨワな場合が多いのはこの業界の人なら誰もが薄々わかっていることなわけで。(しかもその手の予想はたいていあたってる) http://neta.ywcafe.net/000838.html PHPとIIS+ASPを比べてもあまり意味がない。というか、言語は関係ないんだけど、特に「じゃあASPを使わないって言えるの?」ってのは、ASPが脆弱、PHPもそれに比べられるくらい脆弱、って言っているようにしか思えないし、「ASPだって」なんて言っちゃってたら、「セキュアじゃない奴ら同士で喧嘩してるよ」みたいにも見える。 あと、事例を引くのはいいけど ・phpBB の既知

    例えば、PHPを使う - novtan別館
    kmachu
    kmachu 2008/03/18
    「言語は関係ない」←脆弱性の発生の多くは人間だから、「言語」というのが純粋な言語なのか、使う人を含めるのかによって変わってくるかもなぁ。PHPは過去のデフォルト設定が危険すぎた。自動変換系とか。