タグ

PHPとネタに関するt-murachiのブックマーク (13)

  • trimやstripが全角スペースをトリミングしない理由で盛り上がったのでまとめてみた - Qiita

    はじめに RubyのString#stripが全角スペースをトリミングしてくれないことにこの間初めて気づきました。 そこでフィヨルドブートキャンプのSlackで質問してみたところ、結構盛り上がったので記事にまとめます。 編 自分で調べたこと まず自力で調査したことをまとめます。 Javaのtrimメソッド Javaのtrimのロジックは「\u0020(半角スペース)の文字コードより大きいか小さいか」が判断基準になっています。 ただ、それが他の言語の場合同様のロジックで実装されているのかまではわかりませんでした。 RubyのString#strip(Cのコード) 前後のオフセット値を算出してそれを利用して前後のスペースのトリミングを実現しています。 ただ、C力が圧倒的に足りないのでどういうロジックでそのオフセット値を算出しているかまではわかりませんでした。 追記 RubyRuby実装、R

    trimやstripが全角スペースをトリミングしない理由で盛り上がったのでまとめてみた - Qiita
    t-murachi
    t-murachi 2019/06/20
    そもrubyよりUnicodeの方が後発なんですよね… やるとしたら他の言語でもそうであるようにUnicode対応に伴う国際化対応の一環での機能追加でしょうし、そのために既存の関数の挙動を変えることはしないでしょ(´・ω・`)
  • 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への試験的採用は否決
    t-murachi
    t-murachi 2019/04/09
    誰もこれまでJIT版のPHPコンパチブル処理系を作ろうとしなかった (煽るな / cpython だって JIT やってるのにあんなに遅いんだし期待は禁物 (やめれ
  • PHPはもうダメだ、PHP万歳! | POSTD

    (編注:2020/08/18、いただいたフィードバックをもとに記事を修正いたしました。) GutenbergとWordPressに関する騒動は、PHPの終焉につながる最新記事です。深呼吸をしてください、みなさん。トロールは無視し、Mark TwainとFidel CastroとPHPとの共通点を見ていきましょう。そして、もっと重要なのは、スタートアップやスモールビジネスにとって、PHPが今でも合理的な選択である理由です。 PHPはいつから廃れ始めたのか “PHPはもうダメだ”といったブログの投稿が、登場し始めたのは2011年のようです(これより古いものを見つけたら、お知らせください)。Mediumや、mushroomsのように突然出現したcoding bootcampsを探し回れば、その唯一の共通点は、みんながPHPを嫌っているか、あるいは単に無視しているかです。どうやら、法外な値段のコー

    PHPはもうダメだ、PHP万歳! | POSTD
    t-murachi
    t-murachi 2019/03/29
    PHPが終わってるなんて誰が言ってるの? 悪名高いmagic_quotes_*系の仕様が削除された5.4のリリースが2012年、それ以降PHPへの評価はむしろマシになってる。あとクソ遅いcpythonを引き合いに出すのやめろw
  • 脆弱性が多いプログラミング言語、第2位はPHP - 第1位は?

    WhiteSource Softwareは3月19日(米国時間)、「Is One Programming Language More Secure Than The Rest?」において、過去の脆弱性情報を集計し、どのプログラミング言語がより多くの脆弱性とかかわりを持っていたのかについて伝えた。 脆弱性情報が多い順にまとめたプログラミング言語ランキングとしては、以下が報告されている。 C言語 (47%) PHP (17%) Java (12%) JavaScript (11%) Python (6%) C++ (6%) Ruby (5%) 資料: WhiteSource Software データソースはNVD (National Vulnerability Database)、各種セキュリティアドバイザリ、GitHub、そのほか人気の高いトラッキングシステムなどで集計された脆弱性情報など。

    脆弱性が多いプログラミング言語、第2位はPHP - 第1位は?
    t-murachi
    t-murachi 2019/03/26
    Cはもう、ちょっと前まで外部入力のバイト列を長さも検査せずに処理しちゃうような関数ばかりが標準ライブラリで幅きかせてた世界だししゃあないとしか…(´・ω・`) ていうかPHP…(´・ω・`)
  • PHP って JavaScript に変換できるの?できるわけないだろ! babel-preset-php ってのが今日リリースされた?これまさか・・・。ファーーーーーーーーーーーwwwwwwwwwwww - Qiita

    PHP って JavaScript に変換できるの?できるわけないだろ! babel-preset-php ってのが今日リリースされた?これまさか・・・。ファーーーーーーーーーーーwwwwwwwwwwwwPHPJavaScriptbabel PHP (7) を Javascript (ES7) に変換するための Babel プリセット babel-preset-php日 (2017-7-12) リリースされたみたいです 正直、「は?凄すぎだろ (小並感) 」という言葉しか出てきませんww とりあえず面白そうなので試してみます! 使い方 公式の通りですが、プロジェクトを作成し babel-cli と babel-preset-php をインストールします。

    PHP って JavaScript に変換できるの?できるわけないだろ! babel-preset-php ってのが今日リリースされた?これまさか・・・。ファーーーーーーーーーーーwwwwwwwwwwww - Qiita
    t-murachi
    t-murachi 2017/07/13
    使いどころが分からん…(´・ω・`) JavaScriptそのものを書きたくない人はTypeScriptとか使うだろうしPHPの遺産を他に移植したいにしてもJavaScript選ぶ意味が分からん。
  • PHP考古学: PHP4.2.xではmb_eregは複数行モードで動作していた

    大垣さんのブログエントリに刺激を得て、古いmb_eregの挙動を調査しました。その結果、 PHP4.2.x上のmb_eregは複数行モードで動作していたことが分かりましたので報告します。 前回までのまとめ 「正規表現によるバリデーションでは ^ と $ ではなく \A と \z を使おう」にて、RubyPerlPHPの正規表現では、^ と $ は、「行」の先頭と末尾を示していて、文字列の先頭と末尾を指定するには、\A と \z を使うべきであることを説明しました。そして、Rubyの場合はデフォルトが複数行モードであるので、^○○○$ という形で全体一致検索を指定したつもりでも、簡単にチェックをすり抜け重大な脆弱性に直結します。一方、PerlPHPの正規表現はデフォルトでは単一行モードであるので、文字列末尾の改行をチェックできないという問題はあるものの、重大な脆弱性に直結するケースはあ

    t-murachi
    t-murachi 2014/04/11
    時事ネタ盛り込み過ぎやて^^;
  • PHPの参照代入に関してです。 PHPを勉強し始めたのですが、RubyやPythonといった言語と変数・配列の扱いが異なって戸惑っています。…

    PHPの参照代入に関してです。 PHPを勉強し始めたのですが、RubyPythonといった言語と変数・配列の扱いが異なって戸惑っています。 一番わからないのが参照代入です。 http://www.programming-magic.com/20080307090613/ このサイトで挙動が解説されてますが、イマイチ納得できません。 PHPの変数の参照代入に関して詳しく解説しているサイトを教えてください。

    t-murachi
    t-murachi 2013/03/08
    たのしい PHP
  • 『『PHPとかいう糞言語』』へのコメント

    ブックマークしました ここにツイート内容が記載されます https://b.hatena.ne.jp/URLはspanで囲んでください Twitterで共有

    『『PHPとかいう糞言語』』へのコメント
    t-murachi
    t-murachi 2013/03/08
    言語仕様で混乱している状態でまともな論を張るのは難しいですよね (擁護)。 PHP って変数の prefix だけじゃなくてコンテキスト指向なところも Perl を中途半端に真似ちゃってるのね…
  • 5分でできるPHPセキュリティ対策 - ぼくはまちちゃん!

    こんにちはこんにちは!! Webプログラミングしてますか! よく「PHPセキュリティがダメ」とか言われてるよね。 でもそれって、べつにPHPが悪いんじゃなくて、 たぶん、セキュリティとかが、まだよくわからない人が多いだけなんじゃないかな。 がんばって勉強しようと思っても、なんだか難しい理屈が並んでいたりするしね…。 なので今日は、セキュリティ対策について、 「これだけやっとけば、わりと安全になるよ」ってことを、初心者むけに、大雑把に書いてみます! 理屈がわからなくても、最初はコピペでも、 なにもやらないより、やったほうがきっとマシになる! 1. XSS対策 動的なものを表示するとき、全部エスケープすればokです! (NG) あなたの名前は <?= $name ?> ですね! ↓ (OK) あなたの名前は <?= htmlspecialchars($name, ENT_QUOTES) ?>

    5分でできるPHPセキュリティ対策 - ぼくはまちちゃん!
    t-murachi
    t-murachi 2012/02/20
    永久に初心者で良い (趣味でネタサイト作るだけ) なら鵜呑みにすればいいと思うよ。 / ブ米で Perl の Taint モードに触れてる人がいるので大昔に書いたものだけど参考まで… >http://bit.ly/A0rWY1
  • 大垣本を読んで「バリデーションはセキュリティ対策」について検討した - ockeghem(徳丸浩)の日記

    このエントリでは、セキュリティの観点から、バリデーション実装について検討します。大垣さんのを読んで「大垣流バリデーション」について勉強した結果を報告します。 はじめに 大垣さんの記事「入力バリデーションはセキュリティ対策」では、「入力バリデーションはセキュリティ対策である」が力説されています。この記事はおそらくid:ajiyoshiさんのブログ記事「妥当性とは仕様の所作 - SQLインジェクション対策とバリデーション」を受けてのことだと思います。id:ajiyoshiさんのエントリでは、「妥当性検証は仕様の問題であってセキュリティ対策ではありません」と明言されています。私はid:ajiyoshiさんに近い考えを持っていますので、大垣さんの主張について、私なりに考えてみました。 記事を書くにあたり、徳丸の立場を明確にしておきたいと思います。 バリデーションの基準は仕様の問題 バリデーション

    大垣本を読んで「バリデーションはセキュリティ対策」について検討した - ockeghem(徳丸浩)の日記
    t-murachi
    t-murachi 2011/12/26
    サンプルコードをテストしない人って割と多い気もするけど、ここまで説得力を削ぐ bug 満載なのは流石に珍しいかも… (^_^;
  • PHPで時刻の計算が異常に遅い例 - hnwの日記

    追記(2009/06/25):件、PHP Bugs #46926でバグ報告しまして、PHP 5.2.10以降で修正されています。 PHPの日付/時刻関数にmktime関数というのがあります。年月日時分秒の6引数からいわゆるunix timeを求める関数ですが、これがPHPの最近のバージョンで並外れて遅いことがあるという話題です。毎度おなじみのパターンですが、今回もかなりのレアケースです(レアケースじゃなかったら既に誰か気づいているはずです)。 mktime - 日付を Unix のタイムスタンプとして取得する 説明 int mktime ([ int $hour [, int $minute [, int $second [, int $month [, int $day [, int $year [, int $is_dst ]]]]]]] ) 与えられた引数に従って UNIX のタイ

    PHPで時刻の計算が異常に遅い例 - hnwの日記
    t-murachi
    t-murachi 2008/04/29
    2秒…
  • 「PHPは“誘い受け”」─プログラミング言語評価に新たな指標 - bogusnews

    オブジェクト指向、関数型…。採用しているパラダイムによって分類・評価されることの多いプログラミング言語だが、ここにきてまったく新たな分類指標が提案され、注目を集めている。しかも、それによると 「最強のプログラミング言語はPHP」 との、驚くべき結論が出るというのだ。 この新指標は 「やおい指向」 というもので、警視庁在籍の腐女子専門家・星秋子博士が提唱している。簡単に説明すれば、その言語がボーイズラブ的世界に置かれた場合「攻め」であるか「受け」であるか─を検討することで分類をおこなってゆくものだ。業界では「ダイクストラ以来のパラダイムシフトを引き起こす可能性がある」として注目されている。 たとえばおなじみのC言語は、基的には“攻め”だがバッファオーバーフローなどの弱点を衝かれると乱れきってしまう “ヘタレ受け言語” であると博士は分析する。同様にスクリプト言語の「Perl」は“両刀”、「

    「PHPは“誘い受け”」─プログラミング言語評価に新たな指標 - bogusnews
    t-murachi
    t-murachi 2008/02/01
    おもろいけど、これをネタにやおい本書いても売れないだろうなぁ。。。惜しいなぁもったいないなぁ。
  • 株式会社 社会式株 PHPコーディング規約

    t-murachi
    t-murachi 2008/01/31
    これは規約じゃなくて方針だね。内容的には (PHP を採用するスタンスとしては) 概ね同意。但し <?=$error?> はイタダケナイ。せめて htmlspecialchars() してから print() する関数 ho() とかを定義して、 <?ho($error)?> とでもするべき。
  • 1