タグ

関連タグで絞り込む (256)

タグの絞り込みを解除

phpに関するtarchanのブックマーク (350)

  • 世界のPHPテンプレートエンジン、トップ25

    PHPテンプレートエンジンというのは、PHPによるプログラム部分と、HTMLによるデザイン部分を分離することによって、メンテナンス性を向上させることができる、というもの。 プログラムするPHPを扱う側の人にとって見れば、デザイナーの仕上がりを待たずにソースの修正などが可能になり、デザイナー側から見れば、PHPの知識が無くてもテンプレートファイルの部分を変更するだけでデザイン可能になる、というわけ。 そんなPHPテンプレートエンジンの中でも特に有名なトップ25を見てみましょう。 Jaslabs >> Top 25 PHP template engines 中には知らないのも混じってますが、それだけいろいろあるよ、ということで。 Smarty 動作速度の高速さとフレキシブルなところがウリ、かなり有名。 Heyes Template Class とても使うのが簡単で、パワフルらしい。ページレイア

    世界のPHPテンプレートエンジン、トップ25
  • 60行で作るPHP用テンプレートエンジン

    唐突に、PHP用のテンプレートエンジンを作ってみる。 方針: ふつうのPHPファイルをテンプレートとして使う。 <?php echo $var; ?> は面倒なので #{$var} と書けるようにする。 <?php echo htmlspecialchars($var); ?> はもっと面倒なので %{$var} と書けるようにする。 ついでにXML宣言も <<?php ?>?xml ... に自動置換する。【追記】レイアウト機能を追加してみた コード: <?php /* * SixtyLinesTemplate.php - 60行しかないけどSmartyより速いテンプレートエンジン * * 使い方: * require_once('SixtyLinesTemplate.php'); * $TEMPLATE_DIR = 'templates'; // 省略可、パーミッションに注意 * $c

    60行で作るPHP用テンプレートエンジン
  • mb_check_encodingは何をチェックするのか(その1 SJIS編) - hnwの日記

    (2009/02/15 17:20)「個人的な感想」を追記しました。また、下記はPHP5.2.1以降の挙動です。PHP5.2.0以前のmb_check_encodingは更にカオスなので、あまり使い物にならないと思います。 (2009/02/16 12:30)追記2:バグっぽいと思った件は当にバグで、修正がhttp://news.php.net/php.cvs/56276の通り取り込まれました。PHP5.2.9から修正される予定です。 (2009/02/22 16:20)追記3:他のエンコーディングについても調査しました。「(その2 EUC-JP編)」と「(その3 UTF-8編)」も合わせてご覧下さい。 PHPのmb_check_encoding関数が一体何のチェックをしているのか、エンコーディングごとに一通り調べてみます。 まずはSJISとSJIS-win(CP932)について調べてみ

    mb_check_encodingは何をチェックするのか(その1 SJIS編) - hnwの日記
  • PHPで作るOpenIDプロバイダー·Prairie MOONGIFT

    最近ではFacebookやPaypalもOpenIDとして参入するなど、世界全体でOpenIDに対する取り組みが行われている。メールアドレスをはじめとする通知機能がないなど、細かな問題はあるがIDを管理する煩雑さから解放されるのは良いことだ。 OpenIDのプロバイダーになりたい方、個人でOpenIDサーバを立てたい方向け そして逆にOpenIDを提供したいと思う人たちもいる。既存のシステムはもちろん、サービスのブランドを利用して提供したいと思うならPrairieを使ってみてはいかだろう。 今回紹介するオープンソース・ソフトウェアはPrairie、PHPによるOpenIDプロバイダーだ。 PrairieはOpenID 1.1、そして2.0に対応したOpenIDサーバだ。認証システムのみを提供するようになっており、各自はPrairieでログインするとプロフィールページのみが提供される。 テー

    PHPで作るOpenIDプロバイダー·Prairie MOONGIFT
  • 簡単にはじめるポッドキャスティング&ボッドキャスティング·DirCaster MOONGIFT

    英語学習やニュース配信などで使われることが多いポッドキャスティング。iPhoneやiPod Touch、iPod nanoなども流行っているので、徐々にボッドキャスティングも取り組んでみても面白いかも知れない。 ディレクトリにアップロードするだけの簡単ポッドキャスティング iTunesにも対応したポッドキャスティングを配信、なんていうと大げさに聞こえるかも知れないがDirCasterを使えば簡単にはじめられる。 今回紹介するオープンソース・ソフトウェアはDirCaster、ディレクトリにアップロードするだけの簡単ポッドキャスティングソフトウェアだ。 DirCasterはPHPでできたソフトウェアで、ポッドキャスティング用の設定を行った後、ファイルをFTPでアップロードし、同じディレクトリにMP3ファイルをアップロードするだけでポッドキャスティングができてしまう。ごくごく簡単だ。 ポッドキャ

    簡単にはじめるポッドキャスティング&ボッドキャスティング·DirCaster MOONGIFT
  • PHPでもActiveResourceを使う·phpActiveResource MOONGIFT

    Rails2.0系から導入されているActiveResource。REST経由でデータにアクセスしつつ、自動的にモデルにしてくれるのでデータベースと何も変わらずに操作できるのが便利だ。Web APIをモデルのように使ったり、データベースと疎結合にすることでスケーリングしやすくすることもできる。 RailsのActiveResource風にPHPからもアクセスできる RESTベースであれば何もRailsに限ったことではないだろう。PHPへポーティングしたphpActiveResourceが好例だ。 今回紹介するオープンソース・ソフトウェアはphpActiveResource、PHPによるActiveResource実装だ。 phpActiveResourceはPHPでActiveResourceのようなアクセスを可能にするライブラリで、phpActiveResourceを継承したクラスを作成

  • 「なぜPHPアプリにセキュリティホールが多いのか?」のセキュリティホール - ockeghem's blog

    大垣靖男さんの連載から 第21回 文字エンコーディングとセキュリティ(3):なぜPHPアプリにセキュリティホールが多いのか?|gihyo.jp … 技術評論社 一見この動作は無害のように思えるかもしれませんが,ブラウザなど,“\”がエスケープ文字になっているシステムでは重大な問題となります。 <div height="<?php echo addslashes($height); ?>" width="<?php echo addslashes($width); ?>"> この記事が公開された当初,上記のechoが抜けていた。しかし,echoがないと,プログラムの正常系としても動作しない。どこかから,突っ込みが入ったのであろう,その後echoが追加された。 しかし,まだ根的におかしい。 なぜなら,以下の部分が間違っているからだ。 ブラウザなど,“\”がエスケープ文字になっているシステム

    「なぜPHPアプリにセキュリティホールが多いのか?」のセキュリティホール - ockeghem's blog
  • チェック必須!GUIインタフェースを作るようにWebインタフェースを作成できる·Sigma Visual Ajax GUI Builder MOONGIFT

    Visual StudioやMS Accessの良い所は画面のデザインが誰でも簡単に作成できることだろう。そのため、整ったデザインにはならないこともあるが、それでも誰でも作成できてしまうというのは大きな利点だ。 ドラッグアンドドロップでWebアプリケーションの画面を設計できる Webの場合はHTMLを色々と修正する分、インタフェースの作成が面倒だった。そう、それは過去の話になるかも知れない。 今回紹介するオープンソース・ソフトウェアはSigma Visual Ajax GUI Builder、GUi並みの操作性でWebインタフェースを作成できるソフトウェアだ。 Sigma Visual Ajax GUI BuilderはWebアプリケーションを容易に開発することができるIDEライクなソフトウェアだ。多数のコンポーネントをドラッグアンドドロップで配置し、キャプションや値、アクションを指定でき

    チェック必須!GUIインタフェースを作るようにWebインタフェースを作成できる·Sigma Visual Ajax GUI Builder MOONGIFT
  • 中級者向けのPHP本を執筆。PHPによるWebアプリケーションスーパーサンプル 活用編:phpspot開発日誌

    中級者向けのPHPを執筆。PHPによるWebアプリケーションスーパーサンプル 活用編 2006年05月29日- 2008/7/12 改訂第2版が出版されました。 以下は、2006年に出版された第1版の書籍の説明です。 第2版でもコンセプトは変わりませんので、書について知りたい方は以下をお読みください。 尚、第1版は在庫がありませんので、第2版をお求めください。 中級者向けのPHPPHPによるWebアプリケーションスーパーサンプル 活用編」を執筆しました。 PEAR等の便利モジュールを多く紹介しているです(ボリューム的には8割程モジュールの紹介)。 ファイル関連・WEBサービス(amazon/del.icio.us/XML_RPCクライアント/サーバーの実装法)・ブログ関連の他、開発にあたって便利なモジュールの利用法を各種紹介。 (紹介しているモジュールの一覧) 単純にPEAR等

  • Apache/PHP/MySQLなどをWindowsに一発でインストールできる「VertrigoServ」 - GIGAZINE

    Apache/PHP/MySQL/SQLite/SQLiteManage/PhpMyAdmin/Zend OptimizerをWindowsにまとめてオールインワンでインストールすることができるようになっているのがオープンソースで開発されているこの「VertrigoServ」。 これらの各ソフトについて簡単に設定を変更できるコントロールパネルっぽいものがタスクトレイから一発で呼び出せるようになっており、非常に設定が簡単です。また、インストーラは日語化されているので安心です。 実際のインストール方法などは以下から。 VertrigoServ http://vertrigo.sourceforge.net/ ダウンロードしたら実行します 「OK」をクリック 「次へ」をクリック 「同意する」をクリック 「次へ」をクリック さらに「次へ」をクリック 「インストール」をクリック インストール中……

    Apache/PHP/MySQLなどをWindowsに一発でインストールできる「VertrigoServ」 - GIGAZINE
  • 偽偽夜食日記: PHPはスジが悪い言語 (2008-09-07 )

    カテゴリ: PHP おごちゃんの雑文 » Blog Archive » だから言わんこっちゃないより。PHPから負の遺産と言われるCOBOLと同じ空気を感じるのは、の杓子もCOBOLプログラマになったり、COBOLプログラマをかき集めてプロジェクトを行ったりといった状況が似ているから、という話の一節。 ただCOBOLもそうなんだけど、結局その言語の評価ってのは、「どんなシーン」で「どんな人達」が使っているかということでほとんどが決まってしまう。PL/Iや4GL達(「やJava」と書きたい私がいる)みたいに言語そのもののスジが悪いなんてことは、そうそうない。 私は、PHPはそのスジの悪い言語だと思う。言語自体はそれほど悪くはないとは思うが、ランタイムの機能や標準ライブラリがどうにも良くない。PHPを使う利点はデータベースを利用した動的なウェブサイトが手軽に作れるというところにあり、PHP

    tarchan
    tarchan 2008/11/12
    スジのいい書き方をしたフレームワークを作って「これを真似ろ!」というのが解決策じゃないかな
  • MOONGIFT: » 必見!怖くなるくらい優秀なCMS「concrete5」:オープンソースを毎日紹介

    これまで多数のCMSを見てきたが、ここまで完成度が高いと言えるものに出会ったことはなかった…そう言えるくらい凄い。このどきどき感はDekiWikiに触れた時に感じたものに近い。 見たまま編集できるCMS CMSと言えば、ユーザ画面と管理画面に分かれていて、管理画面はモジュールやテーマの設定、各項目の並びを指定するのが通常だ。実際の出力結果はシステム任せで、その点が柔軟性に欠ける点でもあった。 しかしこれは違う。見たまま編集でき、さらに高い柔軟性を維持している。 今回紹介するオープンソース・ソフトウェアはconcrete5、デザイン、管理、コンテンツ作成全てが高度なCMSだ。 相当個人的な感情が入ってしまっているのは、同じようなシステムを構築する予定があったからだ。だがconcrete5は完成度も高く、多少の改造さえ施せば十分な気がする。やはり下手に開発コストをかけるよりもオープンソースで探

    MOONGIFT: » 必見!怖くなるくらい優秀なCMS「concrete5」:オープンソースを毎日紹介
  • Webベースのドキュメントエディタ·Freedomeditor MOONGIFT

    Webアプリケーションが様々に登場している。プレゼンテーションも画像編集も表計算にもWebアプリケーション化の波が押し寄せている。だがそんな中盤石とも言えるのがテキストエディタの領域だ。 ファイル一覧 この分野については単純にWebアプリケーションの良さが適用できない。やはりエディタがローカルやターミナルを使って書いた方が効率的だ。だがそんな中、新しい動きをはじめているのがこのソフトウェアだ。 今回紹介するオープンソース・ソフトウェアはFreedomeditor、Webベースのドキュメントモデルエディタだ。 FreedomeditorはCSSHTMLそしてPHPといった具合に拡張子を限定して動作するドキュメントエディタだ。使い方が特殊で、まだ慣れていないのだがCSSなどを指定することでWebブラウザ上で編集ができる。 編集画面 編集はテキストエリアをそのまま使うほか、WYSIWYGなエデ

    Webベースのドキュメントエディタ·Freedomeditor MOONGIFT
  • 「セキュアなPHPアプリケーションを作成するための7つの習慣」のサンプルがとんでもなく酷い - ockeghem's blog

    はてブで250以上のブックマークを得ている以下のエントリ。 PHP アプリケーションを作成する際には、可能な限りセキュアなアプリケーションにするために、次の 7 つの習慣を守る必要があります。 入力を検証する ファイルシステムを保護する データベースを保護する セッション・データを保護する XSS (Cross-Site Scripting: クロスサイト・スクリプティング) の脆弱性から保護する フォームへの投稿を検証する CSRF (Cross-Site Request Forgeries: クロスサイト・リクエスト・フォージェリー) から保護する ほう。しかし、内容はどうだろうか。 読んでびっくりした。説明も微妙なところが多いが、サンプルが酷い。こんなサンプルでは悪い習慣が身についてしまう。全部は書ききれないと思うので、目についたところからピックアップして紹介する。 パストラバーサル

    「セキュアなPHPアプリケーションを作成するための7つの習慣」のサンプルがとんでもなく酷い - ockeghem's blog
  • PHP 5.3の名前空間仕様が変更されました

    (Last Updated On: 2018年8月13日)名前空間に関する議論は5年以上も行われていたのですが、今度こそ結論が出たようです。 何故このようなエントリを書くかというと、Software Design(技術評論社)の11月号にPHPの最新情報としてα版PHP 5.3を紹介しているからです。入稿後に仕様変更があったので最新号の記事ですが既に内容が古くなってしまいました。 # とは言ってもまだ新しい仕様のPHPは無いですが α版なので仕様や機能が大きく変更される事もありますが大きな変更がありました。見誌が刷り上がった頃に名前空間の区切り文字が”::”だと静的にメソッドを呼び出す場合やクラス定数を呼び出す場合に困る場合がある、とPHP開発者のMLで議論になり始めました。 ML上、IRC上、オフラインの打ち合わせが行われ、数週間におよぶ議論の結果が昨日MLに投稿されました。名前空間の

    PHP 5.3の名前空間仕様が変更されました
    tarchan
    tarchan 2008/10/29
    デカルチャー!
  • MOONGIFT: » 対話的にWebアプリケーションを構築する「Quicty」:オープンソースを毎日紹介

    プログラミングにおいてバグを生み出さないコツはコーディング量を極力減らすことが。既にある資産を使えば、良くある問題点も既に解決されていたり、思っている方法とは異なる実装でパフォーマンスが向上されている可能性もある。 生成したアプリケーション 良いものはどんどん使い、コーディング量を減らそう。コーディングをせずにWebアプリケーションが構築できるのがこのソフトウェアだ。 今回紹介するオープンソース・ソフトウェアはQuicty、対話型Webアプリケーション構築ソフトウェアだ。 QuictyはWeb上で完結するソフトウェアではない。むしろ構築はコマンドラインベースで行うようになっている。その際、各コマンド(ページ作成やテーブル構造作成など)は全て対話型で作業が進められるようになっている。 コマンドラインで構築を行う MySQL/PostgreSQL/SQLiteに対応しており、データ構造を見なが

    MOONGIFT: » 対話的にWebアプリケーションを構築する「Quicty」:オープンソースを毎日紹介
  • MOONGIFT: マイクロソフト製Web環境インストーラ「Microsoft Web Platform Installer」:オープンソースを毎日紹介

    ある意味マイクロソフトらしく、ある意味らしくないソフトウェア。Webアプリケーションのもてはやされる理由として、インストールの手間がなくすぐに使えるという手軽さがある。OSにバンドルしたソフトウェアもあるが、サードパーティ製に敵わないものも数多い。 ウィザード形式で進めていく マイクロソフトとして取るべき戦略として、ローカルインストールという手間を軽減するというのは十分考えられる。様々な要素の絡むマイクロソフト製品群を一括でインストールできれば、サーバサイドアプリケーションのセットアップが簡単になる。 今回紹介するフリーウェアはMicrosoft Web Platform Installer、Webプラットフォームの一括インストールソフトウェアだ。 Microsoft Web Platform Installerを使うとウィザード形式でWeb環境を構築、開発するソフトウェアを一気にインスト

    MOONGIFT: マイクロソフト製Web環境インストーラ「Microsoft Web Platform Installer」:オープンソースを毎日紹介
  • MOONGIFT: » MySQL/PostgreSQL対応のデータベースフロントエンド「vFront」:オープンソースを毎日紹介

    Webベースのデータベースフロントエンドとして有名なものはphpMyAdminだろう。だが開発の現場ではMySQLが利用されることもあれば、PostgreSQLが使われることもある(他のデータベースももちろんあるが)。その度にフロントエンドが異なるのは面倒だ。 管理画面 各種レポートの出力にも対応したこちらを使ってみるのはどうだろう。 今回紹介するオープンソース・ソフトウェアはvFront、細かな設定が可能なデータベースフロントエンドだ。 vFrontはPHPで作られたWebベースのデータベースフロントエンドだ。MySQLのみならず、PostgreSQLにも対応しているという特徴がある。さらにただデータベースのデータを全て編集できるという訳ではなく、テーブルを指定してCRUDを指定できるという利点がある。 テーブル構造確認 例えば修正されるとまずいテーブルや、見られることも問題があるテーブ

    MOONGIFT: » MySQL/PostgreSQL対応のデータベースフロントエンド「vFront」:オープンソースを毎日紹介
    tarchan
    tarchan 2008/10/21
  • MOONGIFT: » ブログとしても使えるWikiエンジン「Wikepage」:オープンソースを毎日紹介

    個人的にブログとWikiは補完関係にあると考えている。個々人が時系列に沿って書き連ねていくのがブログであり、それをまとめてナレッジ化したものがWikiになる。時間とともに情報が陳腐化するブログに比べて即効性はないが、ナレッジとしてはWikiの方が意味がでてくる。 データベースいらずのWikiエンジン そう考えると二つを同時に提供するこのソフトウェアは意味が大きいかも知れない。 今回紹介するオープンソース・ソフトウェアはWikepage、ブログモードを備えたWikiエンジンだ。 Wikepageは基的にはWikiエンジンだ。コンテンツ部分とメニュー部分が同時に編集できるという変則的な形をとっている。通常は誰でも編集できるが、パスワードを知っている人のみ編集できるようにするモードもある。 編集画面 データベースは利用しておらず、テキストファイルだけで動作している。そのためPHPさえ動くレンタ

    MOONGIFT: » ブログとしても使えるWikiエンジン「Wikepage」:オープンソースを毎日紹介
  • MOONGIFT: » Webベースのファイル管理ソフトウェア「eXtplorer」:オープンソースを毎日紹介

    Web上にあるファイルを直接編集できたら、反映も即時行われて便利になることだろう。もちろんセキュリティリスクもあるので、IPアドレス制限したりパスワードをかけたりと言った対策は必要だ。だがファイルのアップロードにFTPを使ってポートを余分に空けるよりは良いかも知れない。 Webベースのファイル管理ソフトウェア PHPで作られたこちらは使い方によっては便利になるソフトウェアだ。 今回紹介するオープンソース・ソフトウェアはeXtplorer、Webベースのファイルマネージャだ。 eXtplorerはPHPで作られており、GUIアプリケーションのようなインタフェースが特徴的なソフトウェアだ。左側にフォルダの一覧、右側にファイルの一覧が表示される。ファイルはその場で編集することができ、パーミッションを設定することもできる。 ファイル編集中 Web上からPHPを使って操作するモードと、FTPを使って

    MOONGIFT: » Webベースのファイル管理ソフトウェア「eXtplorer」:オープンソースを毎日紹介