![http://istks.net/2304](https://cdn-ak-scissors.b.st-hatena.com/image/square/a2f10fcf585169b36f94bb65754ebecffc2de517/height=288;version=1;width=512/http%3A%2F%2Fistks.net%2Fwp-content%2Fplugins%2Fwp-ogp%2Fdefault.jpg)
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 – 基本
ようこそ 時代遅れの情報がウェブ上にあふれている。そんな情報を見たPHP初心者は戸惑ってしまうだろう。そして、まずい手法やまずいコードが広まってしまう。 そんなのはもうやめよう。PHP: The Right Way は気軽に読めるクイックリファレンスだ。PHPの一般的なコーディング規約、 ウェブ上のよくできたチュートリアルへのリンク、そして現時点でのベストプラクティスだと執筆者が考えていることをまとめた。 大事なのは、 PHPを使うための正式なお作法など存在しない ってこと。 このサイトの狙いは、はじめて PHP を使うことになった開発者に、いろんなトピックを紹介すること。 経験豊富なプロの人にとっても、これまで深く考えることなく使ってきた内容について、新鮮な見方を伝えられるだろう。 このサイトは、決して「どのツールを使えばいいのか」を教えるものじゃない。 いくつかの選択肢を示して、それぞ
こんにちはこんにちは!! Webプログラミングしてますか! よく「PHPはセキュリティがダメ」とか言われてるよね。 でもそれって、べつにPHPが悪いんじゃなくて、 たぶん、セキュリティとかが、まだよくわからない人が多いだけなんじゃないかな。 がんばって勉強しようと思っても、なんだか難しい理屈が並んでいたりするしね…。 なので今日は、セキュリティ対策について、 「これだけやっとけば、わりと安全になるよ」ってことを、初心者むけに、大雑把に書いてみます! 理屈がわからなくても、最初はコピペでも、 なにもやらないより、やったほうがきっとマシになる! 1. XSS対策 動的なものを表示するとき、全部エスケープすればokです! (NG) あなたの名前は <?= $name ?> ですね! ↓ (OK) あなたの名前は <?= htmlspecialchars($name, ENT_QUOTES) ?>
前回に引き続き、未修正の脆弱性とパッチを適用しない場合の対処を順次紹介します。繰り返しになりますが、脆弱性の危険度の順ではなくパッチファイル名の順番に紹介します。紹介する脆弱性情報はSRA OSS Inc日本支社にてPHP4セキュリティ保守サービスとして提供しているものです。パッチ類は筆者の会社であるエレクトロニック・サービス・イニシアチブが、現状サポートされているPHPからレガシーPHPにバックポートしています。パッチの説明文を引用して脆弱性を解説します。パッチそのものの紹介は含みませんのでご了承ください。 PHP 4.3.9の評価は、PHPプロジェクトが配布しているソースコードではなくRedHat Enterprise Linux 4で提供されているPHPのSRPM(ソースRPM)のソースコードがベースになっています。PHP 5.1.6についてはPHPプロジェクトが配布しているソースコ
手軽にページング処理するサンプル~。 リンク生成の部分とかは思いっきりハードコーディングしているし、ページ数が多い場合の省略処理とかもしていないけれど。 class TekitouPager { private $base_uri = null; //ベースとなるURL private $page = null; //現在のページ番号 private $per_page = null; //1ページに表示する件数 private $max_row = null; //全データ件数 private $max_page = null; //最大ページ数 private $offset = null; //オフセット /* * 引数(全て必須) * $base_uri ベースとなるURL * $page ページ番号(数値) * $max_row 全データ件数(数値) * $per_page 1ペ
以前こちらの URL で GET/POST を簡単にできるコードを書きましたが、問題があるとのことで多くの指摘を頂きました。zaru さんに正しいコードを書いて頂きましたので下記の記事をご覧ください。 PHP で凄く簡単に GET/POST 送信ができる関数を勝手に改良した | zaru blog 下記にコードを引用させて頂きます。いくらか稼働させた所 curl の方が安定していることが分かりましたので、こちらを引用させて頂きます。curl がインストールできない環境等では zaru さんの記事の別のコードを使用してください。 function wbsRequest2($method, $url, $params = array()) { $data = http_build_query($params); if($method == 'GET') { $url = ($data != '
9 Useful PHP Functions and Features You Need to Know | Nettuts 知っとくと便利なPHPのテクニック9つが掲載されていました。 初心者の方は勿論、PHPを長年使ってる人にも使えるテクニックが載っていましたので勉強がてらにメモ。 func_get_args() 関数で可変引数 を受け取る 通常、関数といえば、次のように引数と共に定義します。 function hoge($arg1, $arg2) { } のように定義して引数を受け取りますが、好きな個数で引数を受け取りたい場合は、次のようにfunc_get_argsで受け取れます。 function hoge() { $args = func_get_args(); foreach ($args as $key=>$value) { echo "arg{$key} is $value
AJAX-ed Todo List With PHP, MySQL & jQuery ? Tutorialzine AjaxなTODOリストをMySQL+PHP+jQueryで作成するデモとチュートリアルが公開されています。 プログラムのダウンロードも可能です。UIも次のようになかなかお洒落でシンプル 編集時はインラインでそのまま編集することが出来ます。 削除の際にはダイアログが次のように現れて削除の確認を行います。 なんらかのプログラムのベースとして使えそうですね。 入門としてもなかなか、やりごたえのあるチュートリアルではないでしょうか。 関連エントリ PHPとjQueryのAjax連携の学習用チュートリアル PHPによってCSSを動的に出力する初心者向けチュートリアル Ajax/CSS/PHP等のチュートリアルまとめ
1 年半ほど前の記事ですが. A Set of Objects in PHP: Arrays vs. SplObjectStorage この記事を簡単にまとめると, 以下のような感じです. PHP でオブジェクトのユニークな集合を扱う方法には, 普通の Array を使う方法と, SplObjectStorage を使う方法がある. Array を使う場合は, spl_object_hash() でオブジェクトのハッシュを取り, それをキーに, オブジェクトを値にしたハッシュ変数として実装できる. SplObjectStorage は, PHP 5.2 以降に搭載された便利なコンテナクラスである. SplObjectStorage は, オブジェクトをユニークに格納することを保証する. SplObjectStorege は, C により実装されているので高速である. (ベンチマークでもそう
ブログ書くのがものすごく久しぶりなので、とりあえず肩慣らしがてら技術メモ。 先日、とあるサーバーでものすごい性能低下があって、みると CPU wait% が異常に高い。 もう全体の80% 以上が wait%。 で、この wait% ってのは主にローカルディスクが原因なのだけど、ディスクの性能限界まではまだ結構余裕があるから原因がよく分からないでいた。 のが解決したのでメモ。 PHP では error_log という便利な関数があって、ファイルにガンガン文字列を追記してくれる。 もちろんファイルじゃなくてもいいけど、多くはファイルに対してログなどを残すのに大変便利。 これがまた超高速で fwrite なんかより断然速い。しかもスレッドセーフ。 fwrite みたいに「途中までしか書き込めませんでした」なんて弱音を吐くこともない。 そして PHP 5.2.13 からはファイルへの書き込みに限っ
へんじがない。ただのポンコツのようだ。 ポンコツが今日も持ち場でガンバリつつ、 楽しく生きていくための備忘録ブログ。ぬわーーっっ!!2005年7月から絶賛「更新」中! 【この記事の所要時間 : 約 4 分】 ●PHPのセッション管理の問題とは? PHPのセッション管理は、セッションの固定化(Session Fixation)問題というのがある。この問題に対応するために、ログイン後にセッションIDを作り直して、ログイン後のセッションを保護するという対策が講じられる。 Session Fixationを原因としたセッションハイジャックを防ぐために、セッションIDを置き換える関数というのが、PHPには用意されている。それが、session_regenerate_id( )である。session_regenerate_id( )を使うとセッションIDは新しいものと置き換わるが、セッション情報を維持
直前の記事「mb_ereg_replace関数でe修飾子を使う際の注意点」で利用しているmb_ereg_search_ナントカという関数群は特徴的な関数ですが、あまり使用例を見ない関数です。今回はこの関数群の概要を紹介します。 この関数群は正規表現マッチを行うmb_ereg系関数のバリエーションの一つです。前回正規表現マッチした場所を覚えていて、再度呼び出すと前回のマッチングに引き続いて正規表現マッチを行います。これを使うと、次のように正規表現マッチ毎に何かの処理を行うループが作れます。 <?php mb_ereg_search_init($subject, $pattern, $option); while (mb_ereg_search()) { $matches = mb_ereg_search_getregs(); // マッチした内容ごとの処理 } Perlだとm/../gでルー
jquery-jsonプラグインを使う。 JSONを使って、JavaScriptの配列やオブジェクトをPHPに渡す。 $.toJSON(data)で配列やオブジェクトをJSONに変換できる。 $.toJSONを使うためには以下のプラグインが必要。 jQuery-JSONプラグインの入手先 http://code.google.com/p/jquery-json/ ソースはこんな感じ。 var data = ["data1","data2","data3"]; JSON = $.toJSON(data); $.post( "../controller/getJSON.php", {"JSON":JSON}, function(data){ alert(data); }, "text" ); PHP側では、json_decodeでPHPの変数として扱う。 そんとき、php.iniの設定によって
SitePoint: New Articles, Fresh Thinking for Web Developers and Designers PHPを使ってWebサイトやWebアプリケーションを構築する場合はデータベースも併用することが多い。そしてその場合に採用されることが多いデータベースのひとつにMySQLがある。PHPはすぐに利用できるようになるプログラミング言語といわれているが、MySQLやSQLはそうではない。堅牢で信頼できるデータベースを設計し、それを扱うSQLクエリを作成するにはそれなりの学習時間と経験が必要だ。 こうした話題がSitePointにおいてTop 10 MySQL Mistakes Made By PHP Developersとして掲載されている。PHPデベロッパが犯しがちな10のMySQLミステイクという内容になっている。どういった間違いをしてしまうか簡単に
TAS designについて Web制作とサービスサイトを運営してまいりました「TAS design」は、2020年4月に「TAS design合同会社」を設立しました。 弊社サービスの詳細はコーポレートサイトをご覧ください。 https://tasdesign.co.jp/ サービスサイト TAS design合同会社では下記のサイトを運営しております。 Buffet time 東京 https://buffets.tasdesign.co.jp/ 素敵な場所で心躍る時間を。東京の食べ放題ホテルビュッフェを紹介します。 すぐトク https://sugutoku.tasdesign.jp/ クーポンやスマホ決済の還元などのお得な情報を紹介します。
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く