タグ

PHPとphpに関するlove0hateのブックマーク (62)

  • PHPカンファレンス2014でHHVM/Hackの話を聞いて感動した - As a Futurist...

    使える言語の幅を広げたいと思ってPHP カンファレンス 2014に参加してきました。徳丸さんの「安全な PHP アプリケーションの作り方 2014」は改めて自分のセキュリティの知識を確かめるのに大変有意義だったのですが、何より感動したのが Facebook の Paul Tarjan による「HHVM + Hack == PHP++」のセッションでした。 すごく簡単に僕が理解した限りで HHVM/Hack を紹介すると、HHVM とは PHP の処理系の一つの実装です。その特徴は JIT コンパイルにより超高速になっていることに加え、圧倒的な魅力は PHP の Extension(C 拡張ライブラリ)の多くが実装されていて PHP のメジャーなフレームワークが問題なく動作するということです。つまりもう実践で戦えるということ。そして、Hack というのは HHVM が処理できるもう一つの言語

    PHPカンファレンス2014でHHVM/Hackの話を聞いて感動した - As a Futurist...
    love0hate
    love0hate 2014/10/12
    中間表現使うならLLVM(PHP/Hack→LLVM IR)ではダメだったのかしらん。LLVMならJIT・多数のアーキテクチャ対応・JSトランスレータ(Emscripten)全部あるよ。名前からしてもLLVM模倣だろうし、何故独自実装を
  • WordPressに仕込まれたマルウェアのコードが恐ろしすぎた

    Googleから「マルウェアに感染している」という警告が届いたので、調査して欲しい』という依頼を受けて、とあるサイトの調査をしたところ、どうやらWordPressにマルウェアが仕込まれている模様。 かなり時間を掛けて広範囲にヤラれていたので、マルウェアをすべて取り除くのに苦労したのですが、その際に見付けたマルウェアが中々恐しいものだったので、ここに書き残しておきたいと思います。 なお、真似してマルウェアを作られても困るので、ソースの一部を画像で載せることにします。 ## マルウェアのソースを人間に読めるようにしてみる では、早速マルウェアの中身を見てみましょう。 まず、いきなり始まるコメント行。そして、長くて一見ランダムに見える文字列。 そして2行目でランダムに見える文字列を base64_decode() し、eval() しています。base64_encode()しているのは、ソース

    WordPressに仕込まれたマルウェアのコードが恐ろしすぎた
  • PHPでHTTPの並行ダウンロードを実現する(Guzzle編) - hnwの日記

    PHPで最近注目のHTTPクライアントライブラリにGuzzleがあります。日での知名度はまだまだという印象ですが、かなり高機能かつ真面目にメンテナンスされている印象で、今後のデファクトスタンダードになりうるライブラリと言えるでしょう。 稿ではこのGuzzleを使ってWebサーバから並行にダウンロードする方法を紹介します。Webブラウザのように同時に複数コネクションを管理しながらKeep-Aliveでコネクションを使い回しますので、下手なコードで実現するより接続先Webサーバにも優しいはずです。 Guzzleの特徴 まずは、Guzzleについて僕が特徴的だと思う点を紹介します。 パッと見でわかりやすいインターフェース cURLは必須ではないがデフォルトでcURLを使う cURLの無い環境がありうるので、cURL無しでも動くのは嬉しい cURLのわかりにくいインターフェースを隠してくれるの

    PHPでHTTPの並行ダウンロードを実現する(Guzzle編) - hnwの日記
  • Homebrew で Apache, PHP, MySQL, Composer をインストールして Yii Framework を動かすところまで - Qiita

    Homebrew で Apache, PHP, MySQL, Composer をインストールして Yii Framework を動かすところまでPHPMySQLhomebrewComposerYii Homebrew での開発環境構築も少し慣れてきたので、Apache, PHP, MySQL, Composer をインストールして、Yii Framework を動かすところまで書きたいと思います。 実行環境 OS X: 10.10 Homebrew: 0.9.5 Homebrew のインストール ターミナルを起動して、以下のコマンドを実行

    Homebrew で Apache, PHP, MySQL, Composer をインストールして Yii Framework を動かすところまで - Qiita
  • Yii Framework

    Yes, it is! Yii is a fast, secure, and efficient PHP framework. Flexible yet pragmatic. Works right out of the box. Has reasonable defaults.

    Yii Framework
  • Symfony の学びかた

    プログラマとして Symfony 歴は 2 年くらい(フルタイムではない) Symfony1 時代はほぼ知らない Java, Ruby, JavaScript, elisp, PHP github 上では JavaScript プログラマ? 代表作は power-assert Why Symfony? なぜ Symfony を選んだか 「コードがしっかりしている」 メンテ方針がしっかりしている(長期サポート, 後方互換性) DIベースの疎結合設計で自分でアーキテクチャを進化させやすい 中長期的な生産性が高まることを期待できる

    Symfony の学びかた
  • PHP の配列を使った手品とその種明かし

    PHP Advent Calendar 2013 に参加しています。昨日の @yando さんから引き継いで2日目。 以前 PHP を使った手品を人前でやったら、 会場から「えっ」「えっ?」「ええっ!?」 という反応があって楽しかったので書いてみます。 演じ方 まずはこちらをご覧ください。 これを実行したらどうなるでしょうか。 できれば、答え合わせをする前に 上記コードの右下にある view raw から keys.php をダウンロードして実行してみてください。 普通に考えたらこうなると思います。 Array ( [key] => value_7 ) では実行してみますね。 % php keys.php Array ( [key] => value_0 [key] => value_1 [key] => value_2 [key] => value_3 [key] => value_4

    PHP の配列を使った手品とその種明かし
    love0hate
    love0hate 2013/12/04
    “使わない方がいいと思います。” ですよねー。
  • CGI版PHPに対する魔法少女アパッチマギカ攻撃を観測しました

    昨夜に、魔法少女アパッチ☆マギカ攻撃を観測しました。魔法少女アパッチ☆マギカとは、PoCのソースコードに Apache Magica by Kingcope とコメントされていることに由来しています(というか、私がそう訳しましたw)。 これは10月29日にPoCが発表されたPHP-CGI攻撃(CVE-2012-1823)の変種です。従来のPHP-CGI攻撃は、CGI版PHPが動作する環境で、PHPスクリプト(中身はなんでもよい)に対する攻撃でしたが、魔法少女アパッチマギカの方は、/cgi-bin/に置かれたPHP処理系(php-cgiなど)に直接攻撃するものです。 CGI版PHPを設置する方法は複数ありますが、よく使われる方法としてApacheのリダイレクトによりPHPスクリプトをPHP処理系に実行させる方法があります。この場合、/cgi-bin/php-cgiなどとしてPHP処理系を公開

  • AutoIndex PHP Script (Website Directory Indexer)

    AutoIndex is provided under the terms of the GNU General Public License (GPL). Copyright © 2002-2007 Justin Hagstrom

    love0hate
    love0hate 2013/01/14
    ファイル一覧を表示(auto index)するツール
  • PHP の $_SERVER['REQUEST_URI'] と parse_url() の予想外な動作について。 - こせきの技術日記

    REQUEST_URI と HTTP_HOST PHP のサーバ変数 $_SERVER['REQUEST_URI'] には、ふつうパスとクエリが設定される。 'REQUEST_URI' ページにアクセスするために指定された URI。例えば、 '/index.html' PHP: $_SERVER - Manual ただし、常にパスから始まると保証されているわけではない。以下のように、 GET に続けて絶対 URL を書いたリクエストを送ると、 GET http://localhost/test.php?query=value#fragment HTTP/1.1 Host: localhost $_SERVER['REQUEST_URI'] の値は、 http://localhost/test.php?query=value#fragmentになる。 ポイント: REQUEST_URI は

    PHP の $_SERVER['REQUEST_URI'] と parse_url() の予想外な動作について。 - こせきの技術日記
  • PHP: ビルトインウェブサーバー - Manual

    警告 このウェブサーバーは、アプリケーション開発の支援用として設計されたものです。 テスト用に使ったり、制約のある環境でアプリケーションをデモするために使ったりすることもできるでしょう。 あらゆる機能を兼ね備えたウェブサーバーを目指したものではないので、 公開ネットワーク上で使ってはいけません。 CLI SAPI にはウェブサーバーの機能が組み込まれています。 このウェブサーバーは単一のシングルスレッドプロセスしか実行しないので、 リクエストがブロックされると、PHP アプリケーションはストールします。 URI リクエストの処理は、PHP を開始した時点の作業ディレクトリから行われます。 -t オプションを使えば、ドキュメントルートを明示的に指定することができます。 URI リクエストにファイルが含まれない場合は、指定したディレクトリにある index.php あるいは index.htm

    PHP: ビルトインウェブサーバー - Manual
    love0hate
    love0hate 2012/10/10
    気軽に試せるって意味でこれはありがたいな。
  • concrete5

    世界一わかりやすい Concrete CMS 導入とサイト制作の教科書 2018年4月14日発売。 Ver 8 対応。 Concrete CMS のバージョン 8 に対応した Concrete CMS の解説です。 Concrete CMS でサイト制作をされたい方に、インストールからサイト運用までを網羅しています。インストール、初期設定、コンテンツの追加方法、ローカル環境の構築方法、テーマ作成、ブロックのカスタマイズ、番環境へのデプロイ、権限とワークフロー、多言語設定、サイト運営と管理などを紹介しています。 ≫ 詳しくはこちら

    concrete5
    love0hate
    love0hate 2012/08/16
    今更知った。うむぅ。
  • 高木浩光@自宅の日記 - ASPとかJSPとかPHPとかERBとか、逆だったらよかったのに

    ■ プログラミング解説書籍の脆弱性をどうするか 印刷されて流通する書籍に脆弱性がある、つまり掲載されているサンプルコードにズバリ脆弱性があるとか、脆弱性を産みやすいコーディングスタイルを身につけさせている解説があり、それが脆弱なプログラマを生産し続ける根源になっている問題は、「なんとかしないといけないねえ」と以前から言われてきた。 ソフトウェア製品の脆弱性は、指摘があればパッチが提供されたり修正版に差し替えられたりするが、書籍の脆弱性はどうか。正誤表が差し込まれるとか、回収する措置がとられるかというと、それは望めそうにない。言論には言論で対抗すればよいということになるだろうか。 久しぶりにいくつかの書籍について調べてみた。先月園田さんの日記などで比較的評判良く紹介されていた2冊を読んだ。 山勇, PHP実践のツボ セキュアプログラミング編, 九天社, 2004年6月 GIJOE, PHP

  • 連載:CakePHPで高速Webアプリ開発|gihyo.jp

    第16回何でもできるようになった1.2のデータバリデーション機能(1/2):基編 秋田真宏 2009-07-17

    連載:CakePHPで高速Webアプリ開発|gihyo.jp
  • jCart - Free PHP/Ajax shopping cart downloaded over 77,000 times

    Notice: Undefined index: jcart in /home/eofgxrgc8nga/public_html/jcart/jcart/jcart.php on line 588 Notice: Undefined index: ajax in /home/eofgxrgc8nga/public_html/jcart/jcart/config-loader.php on line 29 Notice: Undefined index: js in /home/eofgxrgc8nga/public_html/jcart/includes/header.php on line 6 Notice: Undefined index: js in /home/eofgxrgc8nga/public_html/jcart/includes/header.php on line 11

  • https://doophp.com/

  • http://nyx.pu1.net/reference/extra/echo_print.html

  • PHPで日本語メールを送る – 応用編 (添付ファイル、HTMLメール) - EC studio 技術ブログ

    PHPで日語メールを送る - 基編に引き続き、 今回は応用編をお送りします。 基編で解説したmb_send_mailを使えば シンプルなメールを送るには十分な機能がありますが、 それ以上に複雑なこと、例えばHTMLメールや添付ファイルを 使ったメールにはmb_send_mailは使えません。 mail関数を使ってヘッダにガリガリとメールの仕様に そって書けば送れるのですが、それではあまりに 大変なので、ライブラリを使います。 ライブラリを使った日語メール送信 PHPで複雑なメールを送るのに使えるスタンダードな ライブラリとしては、PEAR::MailとPHPMailerが有名です。 (ただし、両ライブラリとも日語メールには対応していないので、 そのままでは文字化けしてしまいます) PEAR::MailはPHPの公式ライブラリのPEARで採用されていますし、 PHPMailerもX

  • PHPで日本語メールを送る – 基本編 - EC studio 技術ブログ

    PHPなどのWebシステム開発において、メール送信は 切っても切れないものだと思います。 ですが、現在のメールはもともと海外で考えられたものなので、 日語などのマルチバイト文字を送ろうとすると エンコードなど複雑な処理をする必要があり、 なかなか一筋縄ではいきません。(メールは奥が深い!) このメーラーではうまく表示されるけど、あのメーラーでは 文字化けしてしまう。。 なんて経験をされた方も 多いのではないでしょうか。 私自身、日語メールでは大変苦労させられました。 今回は、備忘録と情報共有も兼ねて、その経験をもとにした PHPにおける日語メール送信のまとめを記事にしたいと思います。 今回は日語メール基編という事で シンプルな日語メールの送り方です。 シンプルな日語メールの送り方 PHPには簡単にメールを送るmail関数がありますが この関数では日語のメールはそのままでは送

  • PHP とテンプレートエンジン (Smarty/patTemplate)

    PHPでは、HTMLページ内に<?php ?>タグで括る事によって、 HTML(デザイン部分)とプログラム(ロジック部分)を同一ページに記述できます。しかし、同じファイル内にデザイン部分とロジック部分を記述するとメンテナンスが非常に困難となります。Java でも JSP で同じような問題が発生し、JSP 2.0 でカスタムタグの導入により ロジック部を分離することができ、Struts というフレームワークまで生まれました。 PHP では、Template Engine という技術によってデザイン部分とロジック部分を分離させメンテナンスを向上させることができるようになりました。このことで、デザイナーとプログラマーが同時に作業を行えるようにもなりました。この Template Engine は、それほど作るのに難しくはありません。しかし、自分で創って自分でメンテナンスしていくのは大変というので