タグ

programmingとPHPに関するitboyのブックマーク (68)

  • PHPフレームワーク「Laravel」における処理の流れと、ルーティングを理解しよう

    連載ではPHPフレームワークのひとつであるLaravelを紹介していきます。Laravelは、「Web職人のためのフレームワーク」というキャッチコピーのもと、ここ数年で人気がうなぎ上りのフレームワークです。連載を通して、その人気の秘密を味わっていただこうと思います。1回目である前回は、Laravelとは何かを紹介するとともに、Laravelを使ってブラウザに「Hello World!」と表示させるところまで解説しました。とはいえ、何がどうなって「Hello World!」と表示されたのかまでは解説していません。今回は、前回最後に追記したweb.phpの働きをはじめ、Laravelのルーティングの仕組みを解説します。 Laravelの処理の流れ 前回記事における、Laravelのディレクトリ構造のところで、全てのリクエストはpublicディレクトリへのアクセスで処理される、といった話をしま

    PHPフレームワーク「Laravel」における処理の流れと、ルーティングを理解しよう
  • PHPオブジェクト指向入門(前半) - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

    PHPオブジェクト指向入門(前半) - Qiita
  • PECL::ssh2を使ってみる - Do You PHP はてブロ

    このエントリは、Do You PHP?(www.doyouphp.jp)で公開していたコンテンツを移行/加筆/修正したものです。公開の経緯はこちらをどうぞ。目次はこちらです。 初出:2006/01/28 PHPを使ってバッチスクリプトなどを作る際、ファイル転送といえば今まではftp経由が主流(?)かと思いますが、昨今のセキュリティに対する意識向上から何らかの暗号化を施したい場合があります。2005年の初めにPECLにssh2拡張モジュールが登録されマニュアルもそれなりにこなれてきましたので、今更ながら試してみました。 PECL :: Package :: ssh2 今回のゴールは、PHPから公開鍵認証を行い、リモートコマンドの実行とファイル転送を行う、というものです。 インストール まずはインストールした環境ですが、OSはCentOS6.4、PHPは以下のようなconfigureオプション

    PECL::ssh2を使ってみる - Do You PHP はてブロ
  • websec-room.com - websec room リソースおよび情報

    This webpage was generated by the domain owner using Sedo Domain Parking. Disclaimer: Sedo maintains no relationship with third party advertisers. Reference to any specific service or trade mark is not controlled by Sedo nor does it constitute or imply its association, endorsement or recommendation.

  • PSR-0, 1, 2を日本語に翻訳してみました|技術ブログ|北海道札幌市・宮城県仙台市のVR・ゲーム・システム開発 インフィニットループ

    PSR-0, 1, 2を日語に翻訳してみました はじめまして。onoと申します。 このたび唐突にPHP-FIGのPSR内容を日語に翻訳してみました。 1. PSRとは 一言で表すと、PHPの標準コーディング規約です。 それならもう色々あるよねってお話なんですが、 PHP-FIG(PHP Framework Interop Group)というグループには各フレームワークだったりライブラリだったりの関係者が参加しています。 SymfonyだったりZFだったりPEARだったり。 そんな豪勢なメンバーが共通点を見つけながら、ルールを組み立てていきましょう!という背景のもと、共通内容を整理した規約集がPSRということになります。 1-1. 公開します 今回PSR翻訳してみましたが、様々なツッコミを恐れずに公開することにします。 PSR-0 – オートローディング規約(原文) PSR-1 – 基

    PSR-0, 1, 2を日本語に翻訳してみました|技術ブログ|北海道札幌市・宮城県仙台市のVR・ゲーム・システム開発 インフィニットループ
  • 2014年 Webアプリケーションフレームワークトレンド(PHP / Java / Ruby / Python / Perl) - Qiita

    はじめに 一昨日、FIFA15 でサイドバックが前線に放ったフィードが直接入って80m強の超ロングシュートとなって困惑しました。 さて、話は変わりますが、2014年12月時点の TIOBE Programming Community Index によると、昨年と比較して最もランクアップしているプログラミング言語は、Visual Basic なんですね。 そんなプログラミング言語上位20位ですが、Webアプリケーションを構築するにあたって、どの言語を採用するかというのと同じく悩ましいのがどのフレームワークを採用するかということ。 フレームワークの選定基準はアプリケーションの要件はもちろんのこと、環境や開発者、その他にも様々な条件や制約を踏まえつつ、フレームワークの特性も踏まえて適切な選択をする必要があるものです。 そして、今年も各言語において様々なフレームワークにおいて動きがありました。人気

    2014年 Webアプリケーションフレームワークトレンド(PHP / Java / Ruby / Python / Perl) - Qiita
  • PHP/Apache httpdのファイルアップロード/ダウンロード処理

    (Last Updated On: 2018年10月9日)最近、ファイルアップロード/ダウンロード対策に関する検索が増えているようなので書きました。PHPの場合、スクリプトがアップロードされ実行されてしまうと致命的です。アップロードされたファイルを公開ディレクトリに保存することは好ましくありあせん。しかし、既にそうなっているアプリケーションの場合、改修が困難な時もあります。このような場合もより安全に利用できる設定を紹介します。 参考:「スクリプトアップロード対策」も合わせてどうぞ。 ファイルアップロード処理 PHPのファイルロードは簡単です。PHPマニュアルを一度読むと利用できると思います。ポイントのみ解説します。詳しくはマニュアルを参照してください。ファイルアップロード用のHTMLフォームを作り、エンコーディングをenctype=”multipart/form-data”と設定すれば$_

    PHP/Apache httpdのファイルアップロード/ダウンロード処理
  • PHPが糞言語なのはどう考えても参照をポインタだと思っているお前らが悪い - なんたらノート第三期ベータ

    この投稿はPHP Advent Calendar 2013の12日目の記事です。 PHP恒例行事の参照と三項演算子のdisりですが、そろそろあさってな議論はやめませんかという話です。 今年のPHP-dis大賞といえばこちら。 PHPとかいう糞言語|いんまのブログ ※ 追記: これ書かれたのは2012年でしたすんません。 なんで君たちそんなコードが必要なのかね、と。結論から先言うと、きみたちがPHPが使えないって思うのは、そんな挙動に左右されるようなコードを書くからでしょ、だからCとかRubyとかそういう簡単な言語でわかった気になっている初心者はまったくもう...というわけでPHPの言語文法の基礎んとこ、いきますね。 まず、PHPのarrayは「値」です。もちろん文字列も「値」です。値は値なんだけど、それはミュータブルです。PHPのarrayもしくは文字列の代入は、一見すると、ポインタを使わ

    PHPが糞言語なのはどう考えても参照をポインタだと思っているお前らが悪い - なんたらノート第三期ベータ
  • コードをまとめる技術としてのイテレータとジェネレータ - Qiita

    (p. 27) 端的に言えば「同じことを二度書いてはいけない」ということですね。この原則を当てはめなくてもいい例外のパターンもいくつかあるのですが。。 コードにおいて「同じことを二度書いてはいけない」を忠実に守ろうとすると、同じコードを何度も書きたくなったら、何らかの方法でそのコードをまとめる必要があります。 サブルーチン / 関数 サブルーチン化/関数化はコードをまとめる技術として最も基的なものです。 例えば、libcurlで3つのURLに存在するHTMLを取得するコードを書いてみます。 <?php $ch1 = curl_init('http://www.yahoo.co.jp/'); curl_setopt($ch1, CURLOPT_RETURNTRANSFER, true); $responseHtml1 = curl_exec($ch1); curl_close($ch1);

    コードをまとめる技術としてのイテレータとジェネレータ - Qiita
  • モダンPHPチュートリアルを開催しました | Engine Yard Blog JP

    2013/8/24に開催された LLまつり にて「モダンPHPチュートリアル」というタイトルのチュートリアルを担当しました。内容としてはPHPをあまり追いかけていないような方にComposerを中心とした現在よく利用されている開発手法と、PHPのバージョンアップに伴い廃止された機能などを紹介しました。 古くなったプラクティス 古くなったプラクティスとしてはレガシー化したコードによく現れる特徴や、最新のPHPでは利用できなくなった、あるいは今後利用できなくなる項目として下記を挙げています。 ファイルの末尾の ?> 拡張子 .inc のファイル CR+LF (PSRにてPHPの改行コードはLFが推奨されました。) register_globals(廃止済み) safe_mode(廃止済み) magic_quote(廃止済み) @(例外処理を使うべき) var(public private st

  • PHP: The Right Way

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

  • PHPの外部ライブラリの管理にComposerを使う | Ryuzee.com

    みなさんこんにちは。@ryuzeeです。 ComposerはRubyでいうところのBundlerのようなもので、アプリケーションが必要とする外部ライブラリを、そのアプリケーション固有の状態で一元的に管理してくれるツールです。 PHPではPearのようなコマンドを使ってライブラリをインストールすることが一般的ですが、アプリケーションによって必要とするバージョンが違う、といったケースでは問題が起こりやすくなります。 例えば手動でインストールをしていた場合、将来的にライブラリの配布が終わってしまったり、特定のバージョンが配布されなくなると困ってしまいます(したがって、インストールしたバージョンは構成管理の対象とするべきで、常に環境を再現可能にしなければいけません)。 Composerを使うことで、そのような問題からは簡単に解放されます。 なお、ComposerはPHP5.3.2以降で利用可能です

    PHPの外部ライブラリの管理にComposerを使う | Ryuzee.com
  • もう XAMPP / MAMP はいらない!
Vagrant で作る PHP 開発環境

    2013/0915 PHPカンファレンス2013での発表資料です。 http://www.1x1.jp/blog/2013/09/php-enviroment-with-vagrant.html

    もう XAMPP / MAMP はいらない!
Vagrant で作る PHP 開発環境
  • PDFを作成する (1/3):CodeZine

    はじめに PHPPDFを作成する場合にはPDFLibやmPDF、FDPDFなどさまざまな選択肢がありますが、ライセンス、パフォーマンスなどの点で問題がある場合に、Haruの利用を検討してみてはいかがでしょうか。 HaruはZLibやPNGと同様に、非常に緩いライセンス形態を取っているため、サービスの種類を問わず組み込みやすい点に特徴があります。 また、PHPのネイティブエクステンションとして提供されているため、PHPのライブラリとしてパフォーマンスが出ない場合にも利点があります。 とはいえ、サイト上にもあまり情報がなく、日語の利用に関して不安があるかもしれません。しかし最初にいくつか挙げたライブラリは、元々は海外発信のライブラリでした。対して、HaruはlibharuというCのライブラリのエクステンションであり、libharuは日が発信元となっていますので、日語に関しても安心して利

    PDFを作成する (1/3):CodeZine
  • Standard PHP Libraryの例外クラスを活用しよう!

    はじめに 今回はPHPでの例外の扱い方、特にSPL (Standard PHP Library)の例外クラスの使い方を見ていきます。例外を投げる際には、エラー種別により例外クラスを切り替え、受け取る側での処理も分けます。Javaなどではごく当たり前です。しかし、PHPプログラマの中には、そこまで切り分けない人も意外といます。Exceptionクラスだらけのコードもしばしば見かけます。 SPLの例外クラス アプリケーションによっては、例外クラスを独自に作成することもあります。とはいえ、いきなり例外クラスを複数定義して使いまわすことは、若干ハードルが高いかもしれません。まずは、SPL (Standard PHP Library)の例外クラスを使ってみましょう。SPLでは以下の例外クラスを提供しています。 SPL 例外クラスツリー LogicException (extends Exceptio

    Standard PHP Libraryの例外クラスを活用しよう!
  • PHPアクセラレータ「XCache」の最新版リリース

    PHPアプリの処理を高速化するXCacheがバージョンアップした。名前空間をサポートするほか、キャッシュの扱いに自由度を持たせている。 PHPアクセラレータXCacheの最新版となる「XCache 3.0.0」が10月29日にリリースされた。 XCacheはPHPのオペコードをキャッシュしてサーバ上のPHPアプリケーションの高速化を図るオープンソースのアクセラレータである。 最大で5倍の高速化を実現できるとされ、負荷の高いプロダクションサーバに利用されている。Webサーバlighttpdの開発者が率いるXCacheプロジェクトが開発に当たっている。 リリースノートによると、3.0.0では管理者ページのアップデートや名前空間のサポートといった機能強化やバグ修正を盛り込んでいる。 APIのアップデートでは全キャッシュを消去する「clear all cache」に対応し、クラッシュ時にキャッシュ

    PHPアクセラレータ「XCache」の最新版リリース
  • PHPのinterfaceとabstractを正しく理解して使い分けたいぞー ::ハブろぐ

    interfaceとabstractの特徴と違いを捉える 今回もPHP話。(正しくないことは @ahomu に教えてもらえると助かりマス) PHP5では、interface(インターフェイスの宣言)やabstract(抽象化)が使用できます。これらの説明を読むと、一見して同じような役割を持っているように見えます。 それは両者とも、メソッドの実装を「インターフェイスを実装したクラス」や、「抽象クラスを継承したクラス」に強制的に任せる機能を持っているからです。これらの挙動は、外見上とても似ています。少なくとも自分はそこで引っかかりました。 interfaceもabstractも便利なオブジェクト指向機能ですが、使い分けができないと、もったいないです。ありがちな話だと、いつまでもabstract一辺倒で、interfaceの出番が見つからない、とか。 今回はそのへんを自分の理解を整理しつつ書き留

    PHPのinterfaceとabstractを正しく理解して使い分けたいぞー ::ハブろぐ
  • これは凄い。JavaScriptで作られたPHP VM·php.js MOONGIFT

    php.jsはJavaScriptで作られたPHP VMです。PHPコードをJavaScriptに変換して実行します。 世の中には色々変わったことを考える人がいます。Webブラウザでデフォルトで実行できるプログラミング言語がJavaScriptだけなんて許しがたい、そう考えたPHPプログラマーが生み出したのがphp.jsです。その名の通り、PHPの実行エンジンをJavaScriptに実装したというとんでもないソフトウェアになります。 確かに実行できています。PHPのコードからJavaScriptに変換を行っているようです。 配列、クラスさらにvar_dumpまで実装されているのが興味深いです。 かなり突っ込んだPHPの処理もできている模様です。これは面白い。 ダブルクオートの中に変数を入れて普通に出力できているのが興味深いです。 php.jsではPHPのコードがそのまま実行できます(もちろ

  • 6分でわかる最近のPHP ― 2012夏

    さて夏がやってきました。夏と言えばPHPということで、昨年に引き続き、最近のPHP事情をご紹介。 1. PHP5.4リリース PHP5.4が2012年3月にリリースされました。 Traits や Short array syntax(配列の短縮構文)、array dereferencing(foo()[0]) などのPHP言語拡張、PHPコマンドで起動するビルトインサーバ、そしてパフォーマンスの改善など大きな変更が加えられています。 言語自体の機能追加も注目ですが、ビルトインサーバは多くの人にとってメリットになるでしょう。これを使えばPHPアプリケーションの動作確認のためにApacheやnginxなどのhttpdサーバを自分のPCに入れる必要はありません。 下記のようなコマンドを打つだけで、ビルトインサーバが起動します。新しいフレームワークやライブラリ、アプリケーションを試してみたい時に手

  • PHPソースをコーディング規約に合わせて修正してくれるPHP Coding Standard Fixer

    PHPソースをコーディング規約に合わせて修正してくれるツール「PHP Coding Standard Fixer」を試してみました。 PHPでコーディング規約チェックツールとしては PHP_CodeSniffer が有名です。PHP_CodeSniffer はソースをチェックして、問題点を指摘してくれるのですが、ソースの修正は自分で行う必要があります。 PHP Coding Standard Fixerは、コーディング規約チェックだけではなく、規約に従っていないソースを修正してくれるツールです。 PHP Coding Standard Fixerを使う インストール インストールは簡単で、githubで公開されている php-cs-fixer.phar ファイル をダウンロードしてくるだけです。 実行する ダウンロードしたphp-cs-fixer.pharファイルをphpコマンドで実行しま