タグ

phpに関するyokochieのブックマーク (84)

  • PHP: PHP 8.0.0 Release Announcement

    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: PHP 8.0.0 Release Announcement
  • PHP 7のパフォーマンスが高い理由

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    PHP 7のパフォーマンスが高い理由
  • PHPカンファレンス2014にYahoo! JAPANが参加します #phpcon2014

    こんにちは、Yahoo!デベロッパーネットワークの中野です。 今週の土曜日、2014年10月11日に、年に一度のPHPの祭典「PHPカンファレンス2014」が開催されますが、今年はYahoo! JAPANもプラチナスポンサーとして参加します。 Yahoo! JAPANノベルティグッズを配布するほか、社員によるセッションもありますので、ぜひ会場へお越しください。 昨年の様子はレポートとしてまとめていますので、合わせてご確認いただければと思います。 PHPカンファレンス2013参加レポート - Yahoo! JAPAN Tech Blog PHPカンファレンス2014概要 テーマ

    PHPカンファレンス2014にYahoo! JAPANが参加します #phpcon2014
  • 新言語Hackで最強PHPerになろう! - Qiita

    新言語 Hack とは こんにちは、新言語 Hack が Facebook より OSS としてリリースされましたね。 詳細は以下の通り。 https://code.facebook.com/posts/264544830379293/hack-a-new-programming-language-for-hhvm/ 新言語 Hack は HHVM 向けの開発言語で静的型付き言語の性質を取り入れ PHP での素早い開発を実施し、PHPとの互換性があります http://hacklang.org/ http://hhvm.com/ HHVM (HipHop Virtual Machine for PHP) とは、Facebook が OSS で開発している PHP 用の JIT コンパイラです。 HHVM は PHP のコードをダイナミックにバイナリコードへと変換することで高速実行の実現を目

    新言語Hackで最強PHPerになろう! - Qiita
  • PHPが糞言語なのはどう考えても参照をポインタだと思っているお前らが悪い - なんたらノート第三期ベータ

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

    PHPが糞言語なのはどう考えても参照をポインタだと思っているお前らが悪い - なんたらノート第三期ベータ
    yokochie
    yokochie 2013/12/12
    C++の参照演算子とおんなじだーと思ったらarray をそのまま返す関数にはしないような気が。C++でも似たようなコードを書いたら遅いし
  • コードをまとめる技術としてのイテレータとジェネレータ - Qiita

    ジェネレータが5.5から入ったことで完全に空気と化した(?)PHPのイテレータを、ちょっと違う面からまとめたいと思います。 コードをまとめるということ Don't Repeat Yourself(DRY)という言葉があります。達人プログラマーというに出てくる言葉です。 信頼性の高いソフトウェアを開発して、開発そのものを簡単に理解したりメンテナンスできるようにする唯一の方法は、DRY原則に従うことです。 「すべての知識はシステム内において、単一、かつ明確な、そして信頼できる表現になっていなければならない。」 (p. 27) 端的に言えば「同じことを二度書いてはいけない」ということですね。この原則を当てはめなくてもいい例外のパターンもいくつかあるのですが。。 コードにおいて「同じことを二度書いてはいけない」を忠実に守ろうとすると、同じコードを何度も書きたくなったら、何らかの方法でそのコードを

    コードをまとめる技術としてのイテレータとジェネレータ - Qiita
  • PHPカンファレンス2013にYahoo! JAPANが参加します #phpcon2013

    ヤフー株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。LINEヤフー Tech Blog こんにちは、Yahoo!デベロッパーネットワークの中野(@Hiraku)です。 2013年9月14日(土)に年に一度のPHPの祭典「PHPカンファレンス2013」が開催されますが、今年はYahoo! JAPANもゴールドスポンサーとして参加します。 実はYahoo! JAPANでも2004年ごろからPHPをヘビーに使ってサービスを運用しており、独自のノウハウを持っています(詳しくはブログの過去の記事「PHPYahoo!の意外なカンケイ」をご覧ください)。おそらく日で最もPHPを使っている企業の一つとして、PHPカンファレンスを盛り上げるお手伝いをさせていただきます! 当日はエキスパート2名によるセッションと、ブースによる展示

    PHPカンファレンス2013にYahoo! JAPANが参加します #phpcon2013
  • PHP: ビルトインウェブサーバー - Manual

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

    PHP: ビルトインウェブサーバー - Manual
    yokochie
    yokochie 2011/10/07
    モジュールで解決ではなくビルドインっていうところがPHPらしい
  • PHP5.3.7のcrypt関数のバグはこうして生まれた

    昨日のブログエントリ「PHP5.3.7のcrypt関数に致命的な脆弱性(Bug #55439)」にて、crypt関数の重大な脆弱性について報告しました。脆弱性の出方が近年まれに見るほどのものだったので、twitterやブクマなどを見ても、「どうしてこうなった」という疑問を多数目にしました。 そこで、このエントリでは、この脆弱性がどのように混入したのかを追ってみたいと思います。 PHPのレポジトリのログや公開されているソースの状況から、PHP5.3.7RC4までこのバグはなく、PHP5.3.7RC5でこのバグが混入した模様です。RC5はPHP5.3.7最後のRelease Candidateですから、まさに正式リリースの直前でバグが入ったことになります。 バグの入る直前のソースは、ここの関数php_md5_crypt_rから参照することができます。以下に、おおまかな流れを図示します。まずはバ

    PHP5.3.7のcrypt関数のバグはこうして生まれた
    yokochie
    yokochie 2011/08/24
    自分でもやらかしそうなバグ / PHP、関数多いからテスト大変そう
  • もし『よくわかるPHPの教科書』の著者が徳丸浩の『安全なWebアプリケーションの作り方』を読んだら - ockeghem's blog

    たにぐちまことさんの書かれた『よくわかるPHPの教科書(以下、「よくわかる」)』を購入してパラパラと見ていたら、セキュリティ上の問題がかなりあることに気がつきました。そこで、拙著「体系的に学ぶ 安全なWebアプリケーションの作り方(以下、徳丸)」の章・節毎に照らし合わせて、「よくわかる」の脆弱性について報告します。主に、徳丸の4章と5章を参照します。 4.2 入力処理とセキュリティ 「よくわかる」のサンプルや解説では、入力値検証はほとんどしていません。しかし、入力値検証をしていないからといって即脆弱かというとそうではありません。徳丸でも強調しているように、入力値検証はアプリケーション要件(仕様)に沿っていることを確認するもので、セキュリティ対策が目的ではないからです。 「よくわかる」の中で、私が見た範囲で唯一の入力値検証は、郵便番号のチェックをするものです。以下に引用します(「よくわ

    もし『よくわかるPHPの教科書』の著者が徳丸浩の『安全なWebアプリケーションの作り方』を読んだら - ockeghem's blog
  • PHP5.3.7のcrypt関数に致命的な脆弱性(Bug #55439)

    PHP5.3.7のcrypt関数には致命的な脆弱性があります。最悪のケースでは、任意のパスワードでログインできてしまうという事態が発生します。該当する利用者は、至急、後述する回避策を実施することを推奨します。 概要 PHPのcrypt関数は、ソルト付きハッシュ値を簡単に求めることができます(公式リファレンス)。crypt関数のハッシュアルゴリズムとしてMD5を指定した場合、ソルトのみが出力され、ハッシュ値が空になります。これは、crypt関数の結果がソルトのみに依存し、パスワードには影響されないことを意味し、crypt関数を認証に用いている場合、任意のパスワードでログインに成功する可能性があります。 影響を受けるアプリケーション crypt関数を用い、ハッシュアルゴリズムとしてMD5を指定しているアプリケーション。 環境にも依存しますが、デフォルトがMD5の場合もあります。筆者のテスト環境

  • モテる PHP 女子力を磨くための4つの心得 - Memo

    こんにちは PHP 恋愛マネジメントを専攻している heavenshell です。私は学歴も知識もありませんしただの PHPer ですが、PHP 恋愛に関してはプロフェッショナル。 今回は、モテる PHP 女子力を磨くための 4 つの心得を皆さんにお教えしたいと思います。 1.あえて 2〜3 世代前の PHP を使う あえて 2〜3 世代前の PHP を使うようにしましょう。そして好みの PHP 男子がいたら話しかけ、わざとらしくPHP を出していじってみましょう。 そして「あ〜ん!この言語当にマジでチョームカつくんですけどぉぉお〜!」と言って、PHP 男子に「どうしたの? safe_mode ちゃんと off になってる?」と言わせましょう。 言わせたらもう大成功。 「PHP とか詳しくなくてぇ〜! ずっとコレ使ってるんですけどぉ〜! 使いにくいんですぅ〜! ぷんぷくり〜ん(怒)」と言

    モテる PHP 女子力を磨くための4つの心得 - Memo
  • 伝説のPHP作者「Rasmus Lerdorf」名言集を聞くと嫌PHP厨がファビョる

    今のPHPを作ったのは、何十人もの開発者ですよ。私は1人目の開発者だったに過ぎません。 問題を解くのが好きなだけで、プログラミングは大嫌いです。 いかにプログラミングを避けるかを考えていたら、コードを再利用するためのツールとしてPHPができました。PHPは、歯ブラシみたいなものですね。毎日使うものですけど、だから何でしょう?誰が歯ブラシのなんて読みたがります? パーザを書くのは苦手です。当にダメなんです。今でもね。PHPには「protected属性」も「仮想メソッド」もありますよ。情報学科の教官が「重要だ」っていうやつは何でもね。僕自身は、こんなものどうでもいいと思ってますけど。プログラミングを好む人がいるのは知ってますが、全く理解できないですね。 僕はホンモノのプログラマではありませんから、やっつけ仕事ですよ。ホンモノのプログラマは、「動いてるように見えるけど、メモリリークだらけじゃ

    伝説のPHP作者「Rasmus Lerdorf」名言集を聞くと嫌PHP厨がファビョる
    yokochie
    yokochie 2011/01/06
    PHPかっこいい
  • PHP: PHPの隠蔽 - Manual

    PHPの隠蔽 一般に隠蔽という手段はセキュリティとしては弱いものだと言われています。 しかしこうした手法が望ましい場合もあります。 PHP を隠すための簡単な技法がいくつかあり、 システムの弱点を見つけようとする攻撃を遅延させることができる可能性があります。 php.ini ファイルで expose_php を off と設定すれば、 攻撃者が利用可能な情報を減らすことができます。 他の手段は、ApacheのようなWebサーバーで PHPに異なるファイル形式をパースさせるように設定することです。 これは、.htaccessディレクティブまたは Apacheの設定ファイル自体で指定します。 これにより、紛らわしいファイル拡張子を使用可能です。

    PHP: PHPの隠蔽 - Manual
  • PHPerなら知っておいて損はない10の関数

    デフォルトではXML形式の空要素を出力しますが、PHP 5.3.0から第2引数にfalseを指定すると<br>として出力できるようにもなりました。 この関数はもはやPHPerなら常識でしょうか? ■mb_strimwidth 文字を丸める関数です。 <?php $string = "アシアルは今、より多くのお客様にサービスを提供していこうと考えています。業務内容には多くの範囲が含まれますが、自身のアイデアを活かしたい、今までにないWebサービス を作りたい、PHP言語に興味がある、といった方は、アシアルで一緒に頑張ってみませんか?"; echo mb_strimwidth($string, 0, 60, '...', 'UTF-8');

    PHPerなら知っておいて損はない10の関数
  • PHP開発者 Rasmus Lerdorf氏インタビュー ~PHPは「利己的」な開発者の集まり | gihyo.jp

    2010年9月24日・25日に開催された「PHPカンファレンス2010」にあわせて、PHP開発者のRasmus Lerdorf氏が来日されました。日を訪れるのは2度目という氏に、PHPの現状とその根底にある思想についてお話を聞きました。 現在の仕事について 大垣:昨年 Yahoo! Inc.を退職されましたね。現在はどのような仕事をされているのでしょうか? Rasmus:WePayという起業したばかり小さな会社にいます。WePayはカリフォルニアにある、グループで支払いを行う処理を行うベンチャー会社です。 大垣:グループで支払いを行う、というのは、どういうことですか? Rasmus:グループで何かを買いたいときに、グループとしてお金を管理したいですよね。例えば、大学で学生が集まってプレゼントを買いたいという場合があります。どんなものでも構わないですが、10人が集まって共同でオンラインショ

    PHP開発者 Rasmus Lerdorf氏インタビュー ~PHPは「利己的」な開発者の集まり | gihyo.jp
  • PQ - naoyaのはてなダイアリー

    PHP でデータベースを利用するちょっとしたアプリケーションを作るにあたって、手軽に DB を操作できると良いなと思ってます。この辺も自分で作ってみようかなと思い立ち、まずはインタフェースを固めるべくそのプロトタイプを作ってみました。 $pq = new PQ(); $pq->dsn('mysqli://nobody:nobody@localhost/sample?charset=utf8'); echo $pq->query('users') ->where( array('age' => array('>' => 20)) ) ->where( array('mail' => array('-like' => '%@example.com')) ) ->fields("mail, name") ->order("updated desc") ->offset(0) ->limit(10

    PQ - naoyaのはてなダイアリー
  • PHP版 List_RubyLike - naoyaのはてなダイアリー

    PHP で遊んでいます。 練習がてら、以前に作った List::RubyLike (http://github.com/naoya/list-rubylike) という Perl モジュール *1 の PHP での実装を作ってみました。 <?php require_once 'List/RubyLike.php'; echo LR(array("foo", "bar")) ->push("baz", "piyo") ->map(function ($v) { return strtoupper($v); }) ->join(", ") . "\n"; echo LR(range(1, 5)) ->grep(function ($n) { return $n % 2 == 0; }) ->map(function ($n) { return $n * $n; }) ->sum() . "\n

    PHP版 List_RubyLike - naoyaのはてなダイアリー
    yokochie
    yokochie 2010/09/06
  • PHPと仲良くなろう − empty()とdefine() − | GREE Engineering

    はじめに こんにちは、グリーでエンジニアをやっている梶原と申します。 今日は、以前PHPについて気になって調べたことについて、紹介したいと思います。 敬遠されがちなPHPですが、中身を知ると自然と愛着が湧いてきます。 empty()について empty()と言えば、PHPが誇る7不思議関数のひとつです。 http://www.php.net/manual/ja/types.comparisons.php こちらにある通り、どうしてtrueになるのかfalseになるのか不明な点が多い関数です。 empty()が呼ばれる箇所を見てみたいと思います。 php-5.3.2/Zend/zend_vm_execute.h 22701 static int ZEND_FASTCALL ZEND_ISSET_ISEMPTY_VAR_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_A

    PHPと仲良くなろう − empty()とdefine() − | GREE Engineering
    yokochie
    yokochie 2010/07/02
  • PHPで大規模ブラウザゲームを開発してわかったこと

    2010年6月26日に行われたイベント、オープンソースカンファレンス2010 Hokkaido内のセミナーで使われた発表スライド「PHPで大規模ブラウザゲームを開発してわかったこと」Read less

    PHPで大規模ブラウザゲームを開発してわかったこと
    yokochie
    yokochie 2010/06/30
    あまりPHP関係ない