タグ

PHPに関するkns_1234のブックマーク (320)

  • 【PHP8.2】PHP8.2の新機能 - Qiita

    PHP8.3 / PHP8.2 / PHP8.1 / PHP8.0 2022/07/19、PHP8.2がフィーチャーフリーズしました。 言語機能に関わるような機能の追加・変更が締め切られたということです。 今後はデバッグを繰り返しながら完成度を高めていき、2022/11/24にPHP8.2.0がリリースされる予定です。 というわけでPHP8.2で実装されるRFCを見てみましょう。 RFC Disjunctive Normal Form Types 賛成25、反対1で受理。 選言標準形です。 UNION型と交差型を同時に使えるようになります。 思う存分型パズルで遊べますね。 // A型、もしくはB型かつC型、もしくはint function hoge( A | (B & C) | int $param){}

    【PHP8.2】PHP8.2の新機能 - Qiita
  • PHPにはエスケープ関数が何種類もあるけど、できればエスケープしない方法が良い理由

    このエントリは、PHP Advent Calendar 2021 の20日目のエントリです。19日目は @takoba さんによる PHPプロジェクトのComposerパッケージをRenovateで定期アップデートする でした。 SQLインジェクションやクロスサイトスクリプティング(XSS)の対策を行う際には「エスケープ処理」をしましょうと言われますが、その割にPHP以外の言語ではあまりエスケープ処理の関数が用意されていなかったりします。それに比べてPHPはエスケープ処理の関数が非常に豊富です。これだけ見ても、PHPはなんてセキュアなんだ! と早とちりする人がいるかもしれませんが、しかし、他言語でエスケープ処理関数があまりないのはちゃんと理由があると思うのです。 稿では、PHPのエスケープ処理用の関数を紹介しながら、その利用目的と、その関数を使わないで済ませる方法を説明します。 SQL

  • PHP言語の開発と発展をリードする「The PHP Foundation」設立。JetBrains、Zend、Automatticなど10社

    PHP言語の開発と発展をリードする「The PHP Foundation」設立。JetBrains、Zend、Automatticなど10社 JetBrains、Zend、Automatticなどを含む10社は、PHP言語の開発と発展をリードするための組織「The PHP Foundation」の設立を発表しました。 We’re happy and proud to announce the creation of The PHP Foundation – a non-profit organization to support, promote, and advance the PHP language https://t.co/MuD2OBP19z — The PHP Foundation (@ThePHPF) November 22, 2021 設立に参加した企業は、Automatt

    PHP言語の開発と発展をリードする「The PHP Foundation」設立。JetBrains、Zend、Automatticなど10社
    kns_1234
    kns_1234 2021/11/29
    AutomatticはWordPress、JetBrainsはPhpStormで有名な企業ですね。
  • Reference Guide: What does this symbol mean in PHP? (PHP Syntax)

    What is this? This is a collection of questions that come up now and then about syntax in PHP. This is also a Community Wiki, so everyone is invited to participate in maintaining this list. Why is this? It used to be hard to find questions about operators and other syntax tokens.¹ The main idea is to have links to existing questions on Stack Overflow, so it's easier for us to reference them, and n

    Reference Guide: What does this symbol mean in PHP? (PHP Syntax)
  • 今年もPHPが「圧倒的」という結果に 〜 78.9%がサーバサイドで利用/Rubyも堅実に成長、W3Techs調べ

    今年もPHPが「圧倒的」という結果に 〜 78.9%がサーバサイドで利用/Rubyも堅実に成長、W3Techs調べ
  • ハッカーがPHPの開発者になりすましてソースコードにバックドアを仕込んでいたことが判明

    オープンソースのプログラミング言語であるPHPの開発者らが使用していたGitサーバーに何者かが侵入し、PHPのソースコードにバックドアをしかけていたことが判明しました。ハッカーは悪意のあるコミットをプッシュする際、PHPの開発者であるラスマス・ラードフ氏らになりすましていました。 php.internals: Changes to Git commit workflow https://news-web.php.net/php.internals/113838 PHP's Git server hacked to add backdoors to PHP source code https://www.bleepingcomputer.com/news/security/phps-git-server-hacked-to-add-backdoors-to-php-source-code/

    ハッカーがPHPの開発者になりすましてソースコードにバックドアを仕込んでいたことが判明
    kns_1234
    kns_1234 2021/03/30
    "今後のPHPの変更はGitHubに直接プッシュされるようになる"
  • 原理原則で理解するPHP8のコンパイルと実行処理の仕組み(JITもあるよ) - Qiita

    はじめに PHPはプログラミング言語です。1995年に世に出てからこれまで多くの開発者に利用され、様々なソフトウェアを生み出してきました。 学習コストが低く手軽に実行できるトレードオフとして、バグを生み出しやすいコードになりやすかったりパフォーマンス上の懸念から大規模なアプリケーション開発に使うものではないという認識は結構あるのではないかと思っています。 しかしながら2021年現在の最新のメジャーバージョンであるPHP8では、機能面やパフォーマンス面においても大規模開発に対して十分使えるものになっていると個人的には思ってます。 今回は今PHPを使っている開発者やこれからPHPを使う予定の方、あるいは「PHPなんて興味ないけどどういう仕組みなのかは見てやろうじゃないか」と思っているような方にも、PHPの内部ってこういう感じで動いているんだっていうイメージを掴んで頂けたらと思って記事にしてみま

    原理原則で理解するPHP8のコンパイルと実行処理の仕組み(JITもあるよ) - Qiita
    kns_1234
    kns_1234 2021/02/02
  • PHP の乱数実装がグダグダな話

    2022-07-19 これらの問題を解決する Random Extension 5.x 並びに Random Extension Improvement RFC が可決され、 master に merge されました。 PHP 8.2 より利用可能になります。 https://wiki.php.net/rfc/rng_extension https://wiki.php.net/rfc/random_extension_improvement https://github.com/php/php-src/commit/4d8dd8d258ff365b146bcadcb277ede8992706d0 2022-06-18 これらの問題を解決するため、 PHP 8.2 に対して Random Extension 5.x の RFC が作成され、投票が始まっています 2021-01-15 PHP

    PHP の乱数実装がグダグダな話
    kns_1234
    kns_1234 2020/12/14
  • 【PHP8.0】PHP8.0の新機能 - Qiita

    PHP8.2 / PHP8.1 / PHP8.0 / PHP7.4 2020/11/26に リリースされました 。 2020/08/04にPHP8.0がフィーチャーフリーズしました。 言語機能に関わるような機能の追加・変更が締め切られたということです。 今後はデバッグを繰り返しながら完成度を高めていき、2020/11/26にPHP8.0がリリースされる予定です。 というわけでPHP8.0で対応することが決まったRFCを見てみましょう。 RFC JIT 賛成50反対2で受理。 PHP8の目玉、JITです。 PHPをネイティブコードにコンパイルし、さらにコンパイルした結果を次のリクエストに使い回すことができます。 速度はOpcacheがオンの状態から平均的に1.3-1.5倍程度、さらにCPUバウンドな処理なら3倍以上という劇的な高速化が見込めます。 Opcache無しからだと、1分かかっていた

    【PHP8.0】PHP8.0の新機能 - Qiita
  • PHP8でJIT導入 - 一歩上のレベルの言語に

    PHPの次期メジャーアップデートバージョンは「PHP 8」として開発が進められている。このバージョンにはJITコンパイラの導入が予定されており、近年高速化が進められてきたPHP実行環境のさらなる高速化が予定されている。 JAXenterは1月23日(米国時間)、「PHP 8 interview: "JIT will bring the language to a whole new level"」において、現在のPHP 8の開発状況や今後の見通しについて開発者目線からの情報を伝えている。特に興味深い内容は次のとおり。 PHP 8.0のリリーススケジュールはまだ定まっていない。1つの可能性として、アルファ版に到達するまで毎月プレビュー版をリリースするというものがある。PHP 8がまだリリースされない可能性も指摘されているが、PHP 8の開発は速いペースで続いており、2020年中に登場するので

    PHP8でJIT導入 - 一歩上のレベルの言語に
    kns_1234
    kns_1234 2020/01/26
    "機械学習、ゲーム開発、ユーザインターフェース開発など、これまでPHPがあまり使われてこなかった分野でPHPの採用が進む可能性がある"
  • WordPressで制作したサイトが「モバイルフレンドリーではありません」と表示されたら

    Web技術 WordPressで制作したサイトが「モバイルフレンドリーではありません」と表示されたら Monday, December 23rd, 2019 先日、Google検索結果でこのブログが表示されたときに「モバイルフレンドリーではありません」という表示が出ていることに気づきました。 気になって以下のページにURLを入力して調べたところ、WordPressのプラグインから出力されているCSSGoogleにインデックスされないようブロックされており、それによってレイアウトが崩れてしまったようです。 モバイル フレンドリー テスト – Google Search Console この記事では、そのような場合の対処法について書いています。 対処法 最初に結論を書くと、昔から使用しているWordPressの場合、WordPressインストールしたフォルダー(ディレクトリ)にある robo

    WordPressで制作したサイトが「モバイルフレンドリーではありません」と表示されたら
    kns_1234
    kns_1234 2019/12/23
    書きました。昔から使用しているWordPressの場合、このような問題が起きることがあります。
  • MVCとはなにか|tenjuu99

    この記事は、2019年12月1日に開催されたPHPカンファレンスでの「MVCとはなにか」という題の登壇内容の書き起こしです。スライドはこちらです。 1. はじめに MVCの悪かった点は、わたしたちがどう実装したかという点だ。それはあまりに機械的だった。 https://news.ycombinator.com/item?id=8841428 ある人がアラン・ケイに対して「MVCについてどう思うか」という質問をして、それに対するメールでの回答がHacker Newsというサイトにのっていました。前提をお話すると、MVCというアイデアは、だいたい40年以上まえにパロアルト研究所というところで、アラン・ケイがパーソナルコンピュータの開発をしていたときに、客員研究員としてトリグヴェ・リーンスカウクさんという人が訪れて、そのとき他の研究所のメンバーとも話あって作ったアイデアがMVCになります。 MV

    MVCとはなにか|tenjuu99
  • シェルを経由しないOSコマンド呼び出しがPHP7.4で実装された

    この記事はPHP Advent Calendar 2019の5日目の記事です。 はじめに 私は6年前に、PHP Advent Calendar 2013として「PHPだってシェル経由でないコマンド呼び出し機能が欲しい」という記事を書きました。その中で、OSコマンドインジェクション対策の根的かつ安全な対策は「シェルを経由しないコマンド呼び出し」であることを指摘した上で、末尾に以下のように書きました。 PHPコミッタのみなさま、PHP5.6の新機能として、シェルを経由しないコマンド呼び出しの機能を追加できませんか? 現実には当時からPCNTL関数にてシェルを経由しないコマンド呼び出しはできたのですが、当関数の使用が難しいことと、CLI版あるいはCGI版(FastCGIは可)のPHPでないとサポートされていないなどの制限があり、popenやproc_openなど使いやすいコマンド呼び出し関数に

    kns_1234
    kns_1234 2019/12/05
  • スクリプト言語「PHP 7.4」がリリース/型付きプロパティやアロー関数などの新機能を導入

    スクリプト言語「PHP 7.4」がリリース/型付きプロパティやアロー関数などの新機能を導入
    kns_1234
    kns_1234 2019/11/29
    「“Typed Properties 2.0”や“Arrow Functions 2.0(アロー関数)”といった新機能が導入”」
  • P++: 銀河に平和をもたらすための奇策と決着 - Qiita

    PHP 8から、PHPは「PHP」と「P++」という2つの言語を提供するようになる というキャッチーな紹介をするP++: 静的型付けをめざすPHPという記事がそれなりに話題になり、このニュースは目覚しく革新的な内容で、多くのひとの目を引き付けました。 これは早まった理解であり、ほとんど誤報と言ってもいい内容でした。2019年8月15日には提案者人も、少くとも「P++」の計画を短期的に実現するととは非現実的であり時期尚早であることを認めています。 この記事では、PHP開発の現状、なぜ野心的なP++計画が提案され、事実上撤回されたかの経緯について紹介します。 [中立性のための表示] この記事の著者@tadsanはPHPの静的解析を強く推進する立場です。 PHPゆるふわCI入門 PHP型検査・夢と理想と現実) 三行で要約 PHPはバージョンを経るごとに「歴史的経緯」による負債が削ぎ落されてきた

    P++: 銀河に平和をもたらすための奇策と決着 - Qiita
    kns_1234
    kns_1234 2019/08/14
    まだ何も決まっていないという事か。
  • PHP5.6→7.3移行が完了しました | ランサーズ(Lancers)エンジニアブログ

    SREチームの金澤です。 PHP5.6→7.3バージョンアップが完了しました。 PHP5.3→5.6バージョンアップが完了してから約2カ月での移行となりました。 今回、その対応内容と結果を報告したいと思います。 バージョンアップ準備 PHP7化については、有用な記事が数多くありましたので、まずはそれらを参考にさせていただきました。 CakePHP2.10化 PHP5.6化後のライブラリアップデートのタイミングでCakePHP 2.8から2.10にバージョンアップしました。 CakePHP2.9のタイミングでObjectクラスが非推奨になったため、CakeObjectに名前変更しました。 ※PHP7ではObjectが予約語になります。 廃止、非推奨となる関数の対応 対応が必要だったのは主に以下の関数です。 __autoload ereg_* eregi each mysql_* split

    PHP5.6→7.3移行が完了しました | ランサーズ(Lancers)エンジニアブログ
    kns_1234
    kns_1234 2019/05/30
    "CPU使用率はほぼ半減"
  • PHP 8でのJIT採用が可決、賛成50反対2。PHP 7.4への試験的採用は否決

    現在開発中のPHP 8にJITコンパイラを組み込むべきかどうかを決定する投票が3月28日に締め切りを迎え、賛成が50票、反対が2票と圧倒的多数で可決されたことが、発表されました。 JITコンパイラはプログラムの実行時にコンパイルを行い、ネイティブコードを生成して実行するというもの。事前にコンパイル作業が不要なためプログラムを手軽に実行できるうえ、ネイティブコードによる高速な実行が期待できることが特徴です。 投票に参加したのはPHPの開発に貢献しているプログラマなど。同時にPHP 7.4へのJITコンパイラの実験的組み込みについても投票が行われましたが、こちらは賛成18、反対36の結果となり否決されました。 PHPは2015年12月、PHP 7へと10年ぶりにバージョンアップした際、PHP 5と比較して2倍以上の大幅な性能向上を果たしています。 参考:「PHP 7」登場。10年ぶりのメジャー

    PHP 8でのJIT採用が可決、賛成50反対2。PHP 7.4への試験的採用は否決
  • 【PHP8.0】PHPでJITが使えるようになる - Qiita

    2020/06/26追記:アルファ版がリリースされたので実際に試してみた JITのRFCが2019/03/21に投票開始されました。 締切は2019/03/28ですが、2019/03/27時点で賛成48反対2でほぼ導入確定です。 JITとは JIT is 何? PHPは現在は、アクセスが来るたびにソースコードを全部読み取って、opcodeに変換して、順番に逐次実行して、実行が終了したら全てのコードを破棄するというインタプリタ型のプログラミング言語で、処理速度は遅いです。 遅いと言っても、やってる内容からすれば異常なまでに早いんですけどね。 opcodeはCPUやOSなどの実行環境によらず同一のコードが生成されます。 逐次実行するときはさらに実行環境ごとのネイティブコードに変換して実行されます。 OPcacheは、この変換後のopcodeをメモリに保存しておいて、次のリクエストでも使い回すと

    【PHP8.0】PHPでJITが使えるようになる - Qiita
    kns_1234
    kns_1234 2019/03/28
    PHP7でかなり速くなったと体感しているけど、さらに速くなってしまうのか…
  • 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.

    websec-room.com - websec room リソースおよび情報
  • PHPのハマりポイントのリンク集 - Qiita

    PHPのハマり情報のまとめです。主に罠な仕様、予想外の振る舞い、ドキュメントに詳しくは書いてない振る舞いについての情報をまとめていきます。ここに載ってない情報があればぜひとも教えて下さい。頂いた情報をもとに随時更新していきます。 PHPは引数が足りないときはエラーになるが、引数が多いぶんには何も言わない - Qiita PHPはときどき掛け算ができない - Qiita PHPのDateTime::ISO8601はISO8601ではない - Qiita SplFileObjectのREAD_AHEAD, SKIP_EMPTY, DROP_NEW_LINEPHPのバージョンによって挙動がバラバラな件 - Qiita PHP: iterable型はiterator_to_array()に渡しちゃいけない - Qiita PHPの正規表現で^$より\A\zがいい理由 - Qiita PHP:文字

    PHPのハマりポイントのリンク集 - Qiita