タグ

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

タグの絞り込みを解除

PHPに関するkiyo_hikoのブックマーク (171)

  • セッション | PHP プログラミング解説

    セッションの開始 bool session_start ( void ) PHP: session_start - Manual session_start()は、すべての出力の前に実行される必要があります。これはセッションを開始するとき、PHPはセッションIDをクッキーに書き込むためで、setcookie()を使用する場合と同様の制約となります。 すでに作成されたセッションがあるときには、session_start()はセッションの再開となり、クッキーの書き込みは行われません。 セッションの破棄 session_start(); // セッション変数を削除 $_SESSION = array(); if( ini_get( 'session.use_cookies' ) ) { // セッション クッキーを削除 $params = session_get_cookie_params();

  • PHPの関数で省略可能な引数を持った関数を宣言することはできますか?…

    PHPの関数で省略可能な引数を持った関数を宣言することはできますか? オプショナルな引数というような意味合いです。 //$iwidthは時と場合によって省略可能にしたい。 test_func(500); function test_func($isize[,$iwidth]) { print ”<HR size =$isize width=$iwidth>”; }

    kiyo_hiko
    kiyo_hiko 2015/07/01
    デフォルト引数にnullか。nullほど。
  • PHP5.3で即時関数

    JavaScriptではよく使う即時関数(function(){ /*...*/ })()ですが、PHPもバージョン5.3からクロージャがサポートされ、原理的には書けるはずなので試してみました。 current(array(function(){ /* * このブロックは擬似的にブロックスコープを持つ * */ }))->__invoke(); echo current(array(function($a, $b){ return $a + $b; }))->__invoke(1, 2);// 3 …すっげー見づらいですが、一応解説。 function(){ }をリファレンスにする PHPの関数や配列、オブジェクトといったものは、一度変数に代入しないとうまく起動してくれません。しかし関数の戻り値はメソッドをつなげることができます。anatooさんのHackが有名ですね。 function

    PHP5.3で即時関数
  • PHP による hello world 入門 | 東北ギーク

    知る者は言わず、言う者は知らず — 老子 世界で最も有名なプログラムの 1 つに、 hello world というものがあります。 <?php echo 'hello, world'; 出力先に対して「hello, world」という 12 字を書き込むだけの単純なプログラムで、プログラミング言語やライブラリの利用例を最小限の形で示すものです。 この記事ではメジャーな Web プログラミング言語の 1 つである PHP 処理系が、hello world をどのように実行するのかについて、簡単に解説します。 以下の 4 節で構成されています。 「PHP スクリプト実行の大体の流れ」は実行時の概略を箇条書きでまとめたものです。 「SAPI」では、PHP 処理系の起動のされ方についての基礎知識を解説します。 「Zend Engine とオペコード」は PHP 公式処理系の仮想マシンの命令と、PH

    PHP による hello world 入門 | 東北ギーク
  • REST - 2.x

    REST¶ 最近のアプリケーションプログラマーは、サービスのコア機能を ユーザにオープンにする必要があると気付き始めています。 簡単に提供でき、自由にコアAPIにアクセスできれば、広く受け入れられ、 マッシュアップされたり、簡単に他のシステムと統合できます。 簡単にあなたの作ったアプリケーションロジックにアクセスさせる方法は色々ありますが、 REST はその中でもすばらしい方法でしょう。とてもシンプルで、大抵は XML ベース (SOAP のようなものではなく、単純な XML のこと) で、HTTP ヘッダによって制御されます。 CakePHP を使って REST の API を提供するのはすごく簡単です。 簡単なセットアップ¶ REST を動かすための手っ取り早い方法は、 app/Config/routes.php ファイルに数行追記することです。 Router オブジェクトは、 map

  • RESTなWebサービスをPHPで操作する

    はてなブックマークのAtomAPIの概要と、アクセスに必要な環境 今回は、「RESTなWebサービスの利用/開発」の第3回として、より格的にWebサービスにアクセスする例を紹介します。RESTなWebサービスの1つとして、はてなブックマークの「AtomAPI」を例に取り上げ、Web開発用の簡易スクリプト言語であるPHPPHP:Hypertext Preprocessor)を使ってブックマークの追加/編集/削除を行う方法を解説します。 AtomAPIは、ブログなどのWeb上の情報を、Webアクセスに用いられるHTTP(Hypertext Transfer Protocol)を通して編集するためのプロトコルです。AtomAPIは通称で、正式には「The Atom Publising Protocol」(略称はAtomPub)と呼びます。 AtomAPIでは、一般にはRESTの形式で通信を行

  • PHP7で変わること ——言語仕様とエンジンの改善ポイント

    1. What’s new in PHP7 PHP7で変わること ̶̶言語仕様とエンジンの改善ポイント hnw PHPカンファレンス関西2015 (2015/5/30)発表資料

    PHP7で変わること ——言語仕様とエンジンの改善ポイント
    kiyo_hiko
    kiyo_hiko 2015/06/01
    defined-or的なもの、無名クラス、型注釈っぽいもの、例外、高速化、配列の誕生(連続領域で取る)、らしい
  • EclipseでPHP関数のコード補完ができなくなったとき

    プラグイン入れたり抜いたりしたとき、プロジェクトを他からコピーしたときなどに起きがちなこれ↓の解決法がやっとわかりました。 Ctrl+Shiftが標準の関数にだけ利かない。プロジェクト内にある関数には反応するのに・・・。 2012/10/01追記 .@Ayutanalects http://t.co/0bXmqiYZ この記事参考にさせてもらいましたー。プロジェクトPHPプロジェクトの切り替えはプロジェクト右くり→構成→ADD PHP support で切替可能ですよー — れど@ (@mao1020) September 28, 2012 というのを教えていただきました! 直接手書きするよりはるかに安全ですね…(笑 確認するところ Eclipse上のPHPプロジェクトになってるか確認 違ってたら新規PHPプロジェクト作ってソース移動するのが手っ取り早そう。というかこの状態だとたぶんプロ

    EclipseでPHP関数のコード補完ができなくなったとき
  • PHP、かつてWebで人気だった言語が下火になりつつある | readwrite.jp

    今月頭頃にPHPの勉強を始めた時、編集者や知り合いと目標を目指して燃えていた。 しかしながら技術に詳しい人からの反応は常に「アレのどこがいいの?」というものばかりだった。 PHP、かつてパーソナルホームページの略であるとされ、その名前から元々シンプルかつカスタマイズが容易なWebサイトを作るために生まれてきたこの言語では、Webページにインタラクティブな要素を盛り込むことができる。 サイト上でPHPを用いることで、ページを静的なものから、投稿するとすぐにそれが反映されるBlogの様に動的なものにすることが出来る。 私がPHPに興味を持った最初の理由はこれだ。Blog構築で人気のプラットフォームであるWordPressは、Blogの見た目や機能をカスタマイズするためのテーマエンジンにPHPを用いているため、もしPHPを使えるのであれば、Blogのかなり細かいところまでいじることが出来る。 P

    PHP、かつてWebで人気だった言語が下火になりつつある | readwrite.jp
  • 「10日でおぼえるPHP入門教室 第4版」はセキュリティ面で高評価

    弊社社の麻布十番移転に伴い、社近くの麻布図書館を利用しています。麻布図書館は土地柄のイメージにあう瀟洒な建物で、蔵書がない場合は港区の他の図書館から取り寄せ(無料です)ができますので、よく利用しています。今回は、山田祥寛さんの「10日でおぼえるPHP入門教室 第4版 」を借りて読んでみました。一読して、書がセキュリティにもよく配慮されていることがわかりましたので、以下にご紹介したいと思います。 クロスサイトスクリプティング(XSS) 表示の際にHTMLエスケープするという原則を忠実に守っています。そのため、下記の e() という関数を定義して呼び出しています。 function e($str, $charset = 'UTF-8') { return htmlspecialchars($str, ENT_QUOTES, $charset); } その他にもXSS対策として重要な下記の

  • PHP: 返り値 - Manual

    Getting Started Introduction A simple tutorial Language Reference Basic syntax Types Variables Constants Expressions Operators Control Structures Functions Classes and Objects Namespaces Enumerations Errors Exceptions Fibers Generators Attributes References Explained Predefined Variables Predefined Exceptions Predefined Interfaces and Classes Predefined Attributes Context options and parameters Su

    PHP: 返り値 - Manual
    kiyo_hiko
    kiyo_hiko 2015/04/21
    return省略するとNULLなのか。そこはprognになってほしかった
  • PHPのJSONライセンス問題が一応決着 - hnwの日記

    2012年頃に、PHPのJSONエクステンションのソースコード中に次のようなライセンス文言が含まれていると話題になりました。 The Software shall be used for Good, not Evil. これはJSONライセンスと呼ばれるライセンスの一文です。「このソフトウェアを良いことに使うのはいいけど、悪いことには使っちゃダメ」といったところでしょうか。 これはフリーソフトウェアの定義に反しており*1、各種LinuxディストリビューションでJSONエクステンションを配布できないことになるため、ちょっとした騒動になったというわけです。 稿ではこのJSONライセンスへの対応が現在どうなっているかを紹介します。 各種Linuxディストリビューションの対応 PHPのJSONエクステンションはjson_encode()やjson_decode()などの重要な関数を提供するエクス

    PHPのJSONライセンス問題が一応決着 - hnwの日記
  • PHP: array_reduce - Manual

    Getting Started Introduction A simple tutorial Language Reference Basic syntax Types Variables Constants Expressions Operators Control Structures Functions Classes and Objects Namespaces Enumerations Errors Exceptions Fibers Generators Attributes References Explained Predefined Variables Predefined Exceptions Predefined Interfaces and Classes Predefined Attributes Context options and parameters Su

    PHP: array_reduce - Manual
    kiyo_hiko
    kiyo_hiko 2015/04/14
    phpでreduceを使う方法
  • PHP で配列を走査して処理するのは、for / foreach だけじゃない

    PHP で配列の要素にアクセスして、処理を行うには、for や foreach を使うのがおなじみです。 この方法でも良いのですが、PHPには、それ以外にも配列を走査する関数やライブラリがあります。ここでは、配列を走査して処理を行う方法を見てみましょう。 サンプル仕様 このエントリで以下の配列を処理対象とします。array.phpで保存されている想定です。 <?php return [ [ 'id' => 1, 'year' => 1993, 'name' => 'Harada', ], [ 'id' => 2, 'year' => 2001, 'name' => 'Kato', ], [ 'id' => 3, 'year' => 2009, 'name' => 'Aoyama', ] ]; この配列について処理を行います。 配列内に連想配列が格納されており、nameとyearというキーを

    kiyo_hiko
    kiyo_hiko 2015/04/14
    phpでfilter(remove-if-not)やmapを使う方法
  • PHPにとってのIRB, IPython的なもの、Boris | 高橋文樹.com | プログラミング

    この投稿は 9年 前に公開されました。いまではもう無効になった内容を含んでいるかもしれないことをご了承ください。 タイトルそのまんまなんですが、Borisというのがあるらしいです。RubyPythonにはインタラクティブシェルというのがあって、ターミナルから文字通り「対話的に」コーディングを行えます。 Pythonのインラタクティブシェル、IPython 一応、PHPにもこういうのはあって、 php -a とやるとインタラクティブシェルが起動するのですが、IPythonやIRBにあるような戻り値の自動表示がありません。いちいちecho しなければいけないので、大変ダルいんですね。 変数を定義しても表示されない そこでBorisというのを使うと、戻り値がいい感じにわかります。 Borisを実行したところ いいですね。Macならhomebrewで入れるのが楽です。 Borisをライブラリに同

    PHPにとってのIRB, IPython的なもの、Boris | 高橋文樹.com | プログラミング
    kiyo_hiko
    kiyo_hiko 2015/04/10
    BorisというものがREPLできるらしい
  • http://objectmix.com/php/427874-there-redo-loop-control-function.html

    kiyo_hiko
    kiyo_hiko 2015/04/10
    redoない
  • [PHP]PHPでPerlのqwを実現するお!

    function qw ($str) { return preg_split('/\s+/',$str,-1,PREG_SPLIT_NO_EMPTY); } $data = qw(' hoge muge dae '); print_r($data); にゃろめ。 プログラ増田のあなぐら

    [PHP]PHPでPerlのqwを実現するお!
    kiyo_hiko
    kiyo_hiko 2015/04/10
    "プログラ増田のあなぐら"
  • Windows8にNetBeansでPHPの開発環境を作成する

    NetBeansでPHPの開発環境を作成する手順をまとめた。 XAMPP for Windowsのインストール。 NetBeansにはPHPやApacheが含まれていないため、あらかじめ用意する必要がある。 XAMPP for Windowsで、PHP・Apache・MySQLをまとめてインストールする。 XAMPP for WindowsからXAMPP Windows版をダウンロードする。 ダウンロードしたら、プログラムを実行してインストールする。 インストールの設定は初期値のままで問題ない。 Xdebugの設定 初期設定ではXdebugは無効になっていて、NetBeansのデバッグ機能が使えない。 PHPの設定を変更し、Xdebugを有効にする。 PHPの設定ファイル(C:\xampp\php\php.ini)を開き、ファイルの終わりの部分にある[XDebug]のセクションを編集する。

    Windows8にNetBeansでPHPの開発環境を作成する
  • PHP開発には単なるエディタだけでなく、もっと良い環境を - Webアプリエンジニア養成読本 AdventCalendar2014 22日目 - uzullaがブログ

    いきなり宣伝ですが、エンジニアのお祭りYAPC::Asia Tokyo 2015の情報をもれなくチェックするためのメール通知サービスが開始されました! YAPC::Asia Tokyo 2015 毎年「チケット販売いつのまにおわったの…」等といった悲しい声をいただきます。わすれないように是非上記リンクより、メールアドレスを登録しましょう! さておき、エントリはWebアプリエンジニア養成読アドベントカレンダーです。 Webアプリエンジニア養成読 Advent Calendar 2014 - Qiita Webアプリエンジニア養成読[しくみ、開発、環境構築・運用…全体像を最新知識で最初から! ] (Software Design plus) 作者:和田 裕介,石田 絢一 (uzulla),すがわら まさのり,斎藤 祐一郎技術評論社Amazon私の担当分においては、こちらの書籍でお話でき

    PHP開発には単なるエディタだけでなく、もっと良い環境を - Webアプリエンジニア養成読本 AdventCalendar2014 22日目 - uzullaがブログ
    kiyo_hiko
    kiyo_hiko 2015/04/09
    PHPStorm
  • PHP: switch - Manual

    switch (PHP 4, PHP 5, PHP 7, PHP 8) switch文は、同じ式を用いてIF文を並べたのに似ています。 同じ変数を異なる値と比較し、値に応じて異なったコードを実行したいと 思うことがしばしばあるかと思います。 switch文は、まさにこのためにあるのです。 注意: 他の言語とは違って、 continue命令は switch にも適用され、breakと同じ動作をします。 ループの内部で switch を使用しており、 外側のループの処理を続行させたい場合には、continue 2 を使用してください。 注意: switch/case が行うのは、 緩やかな比較 であることに注意しましょう。 次の二つの例は、同じことを二つの異なった方法で書いたものです。 一つは、if と elseif文を、 もう一つはswitch文を使っています。 どちらも、出力は同じです。

    PHP: switch - Manual
    kiyo_hiko
    kiyo_hiko 2015/03/26
    caseには文字列リテラルを取れる。caseのリテラルと比較される式はswitch文に入る冒頭で1度だけ評価される