タグ

phpに関するknoのブックマーク (266)

  • これから先もPHPで戦うために、なにを使い、なにを学ぶべきか - 廣川類に聞くPHP学習に大事なこと|ハイクラス転職・求人情報サイト AMBI(アンビ)

    これから先もPHPで戦うために、なにを使い、なにを学ぶべきか - 廣川類に聞くPHP学習に大事なこと Webアプリケーション開発言語として広く使われるPHP。黎明期から浸透していくまでの過程、そして、これから先もPHPを活用していくために必要なこと、をエキスパートの廣川類さんに聞きました。 記事は2020年3月に実施した遠隔取材をもとに構成しています。 1995年の公開以降、PHPは多くの企業、サービスで採用され、エコシステムが拡大してきました。言語の歴史に比例するように、さまざまなサービスのなかで積み重なってきたPHPのシステムを、いかにして持続/発展可能なものとするか。おそらく、多くのPHPユーザが感じる疑問をエキスパートにぶつけます。 今回お話を伺った廣川類( ひろかわ・るい )さんは、業は制御関連のエンジニアであり、PHPへの関わりは、「あくまで個人の活動」と表現します。しかし

    これから先もPHPで戦うために、なにを使い、なにを学ぶべきか - 廣川類に聞くPHP学習に大事なこと|ハイクラス転職・求人情報サイト AMBI(アンビ)
    kno
    kno 2020/05/15
  • 【PHP7.4】PHP7.4がリリースされたので新機能全部やる - Qiita

    PHP8.1 / PHP8.0 / PHP7.4 2019/11/28にPHP7.4.0がリリースされました。 ということで、ここではドキュメント化されている新機能や変更点を片端から試してみます。 これら以外にもドキュメント化するほどでもない軽微な変更が多々入っているはずですし、単なるバグ修正も山ほどあるのですが、今回はそのあたりには触れません。 把握しきれていませんしね。 インストール 古いXAMPPが入っていたらディレクトリまるごと削除。 最新のXAMPPをインストール。 WindowsPHPからVC15 x64 Thread Safeをダウンロード。 解凍したディレクトリをpath\to\xampp\phpにまるごと上書きコピペ。 php.ini-developmentをphp.iniにコピー。 php.iniのextension_dirをエクステンションが入ってるディレクトリへの

    【PHP7.4】PHP7.4がリリースされたので新機能全部やる - Qiita
    kno
    kno 2019/12/03
  • 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
  • PHPカンファレンス仙台2019

    PHPカンファレンス仙台、 満を持して開催決定! 2019年1月26日(土)、TKPガーデンシティPREMIUM仙台西口8Fで開催します。 PHPカンファレンスは、PHPエンジニアによる最大規模の技術者イベントとして、東京、関西、福岡、北海道で開催されてきました。仙台では今回が初の開催となります。 県内外からのご参加お待ちしております!

    PHPカンファレンス仙台2019
    kno
    kno 2018/11/12
  • Laravel使用時に困った点と対処方法 - ぐるなびをちょっと良くするエンジニアブログ

    初めまして。レストランサービス開発Gのまつやんです。 ぐるなびを利用されている加盟店様が使われる、店舗ページ管理ツール「ぐるなび PRO for 飲店」の開発・保守のほか社内用管理ツールのリプレイス等も行っております。 今回は、社内用管理ツールのリプレイスでLaravelを使用して実装したときに困った点とその対処方法を書いてみます。 社内ツールのリプレイスでLaravelを導入 ぐるなびの社内用管理ツール(※1)のひとつ「エリア割付ツール」は、お店の緯度・経度を入力することで以下のようなことができます。 (※1)社外からのアクセスはできません 周辺のスポット(例:上野動物園とか東京ドーム)などの情報を飲店様に紐付け 周辺駅の情報を取得(紹介している機能は一部です) このツールが古くなり改修要望も上がってきておりましたので、リプレイスすることになりました。流行りのフレームワークかつ、チー

    Laravel使用時に困った点と対処方法 - ぐるなびをちょっと良くするエンジニアブログ
    kno
    kno 2018/07/10
    ほぼサーバ周りの話だった
  • 2018年のPHPDoc事情とPSR-5 - Qiita

    PHPDocとは、クラスや関数などのブロックに記述できるDocComment内に記述する書式の通称です。この書式の情報源として時折PSR-5が参照されることがあるので簡単に状況をまとめます。 TL;DR PSR-5の標準化ステータスは昨年10月にABANDONED (放棄・議論停滞)になりました 2018年9月26日にPSR-5とPSR-19が分割され、ともにDRAFT状態に入りました PHPDocを型注釈として利用する各処理系の実装にはばらつきがあり、PSR-5とは相違点があります PhpStormは現在のところ(2018.1 EAP)PSR-5と互換性がありません 特にチーム開発では、対応する型記述の書式について注意が必要です PhpStormに配慮して書く場合、phpDocumentorの仕様を参照する方が安全です PHPDoc リファレンス — phpDocumentor この記事

    2018年のPHPDoc事情とPSR-5 - Qiita
  • CodeIQについてのお知らせ

    2018年4月25日をもちまして、 『CodeIQ』のプログラミング腕試しサービス、年収確約スカウトサービスは、 ITエンジニアのための年収確約スカウトサービス『moffers by CodeIQ』https://moffers.jp/ へ一化いたしました。 これまで多くのITエンジニアの方に『CodeIQ』をご利用いただきまして、 改めて心より深く御礼申し上げます。 また、エンジニアのためのWebマガジン「CodeIQ MAGAZINE」は、 リクナビNEXTジャーナル( https://next.rikunabi.com/journal/ )に一部の記事の移行を予定しております。 今後は『moffers by CodeIQ』にて、 ITエンジニアの皆様のより良い転職をサポートするために、より一層努めてまいりますので、 引き続きご愛顧のほど何卒よろしくお願い申し上げます。 また、Cod

    CodeIQについてのお知らせ
    kno
    kno 2018/03/06
  • [301] LaravelをCORESERVER(XREA)で動かす - Qiita

    Register as a new user and use Qiita more conveniently You get articles that match your needsYou can efficiently read back useful informationWhat you can do with signing up

    [301] LaravelをCORESERVER(XREA)で動かす - Qiita
  • PHPで不要なソースコードを取り除く時の4つの心得 - Qiita

    この記事はPHP Advent Calendar 2017 20日目の記事です 記事中のキーボードショートカットはMacPhpStormのものです そもそもどういう経緯でソースコードを取り除かなければならない状態が起こるのか どんな会社でもメンバーが変わったり、昔関わっていたメンバーが会社を去っていたり、新チーム・新部署・新事業の立ち上げなどによってそのリポジトリやその範囲のソースコードに関わるメンバーの変更があったりするかと思います そうすると、「長い間同じ人が同じリポジトリや同じ範囲で責任を持って開発を続ける」ことが出来なくなってしまうケースもあるかと思われます その結果として、現在では使われていないソースコードや周りから浮いてしまっているコード、よくわからない仕様などが残されてしまっている、などという状況が起こり得ます そもそもそういう状況が起きないことが理想ではありますが、事業展

    PHPで不要なソースコードを取り除く時の4つの心得 - Qiita
  • PSR-2に準拠した PHP コードを書いてみて気づいたこと | バシャログ。

    現在ではロガーのインターフェイスに関する規約を定める PSR-3、PSR-0にとってかわる PSR-4、HTTP メッセージの取り扱いを定める PSR-7が追加されています。また、PSR-4の追加に伴って PSR-0は非推奨となりました。 PSR-3~7の概要については次の記事が参考になります。 PSR-3 Logger Interfaceの話: Architect Note PSR-4 Improved Autoloadingについて調べてみたメモ | kanonjiのブログ PHP - Psr7を使ってみた(というか不変オブジェクトを初めて使った感想) - Qiita さて、冒頭にも書いたとおり、ある長く続く開発プロジェクトで PSR-2をコーディング規約として採用することになりました。「採用する」というのは、これまで口約束や慣習で成り立ってきたものを明文化されたものに置き換えるという

    PSR-2に準拠した PHP コードを書いてみて気づいたこと | バシャログ。
    kno
    kno 2017/09/20
    ”private であることを示すためにプロパティ名をアンダースコアで始めてはいけない”
  • PHPとMySQLのソートが一致しなくて禿げた - Qiita

    こんにちは。はじめまして。tarokamiakzeです。 PHPのsort系関数の結果と、MySQL のorder by指定を比較する機会がありまして。 記号の扱いが一致しなくて泣きたくなりました。 (PHPUnitで、検索系API当にソートされているか検証したかっただけなのに...) ので、怒りに任せて記事を書きます。LAMP環境とはなんだったのか!! 再現方法 MySQL編 # MySQL CREATE TABLE `sort_test` ( `name` varchar(255) NOT NULL, PRIMARY KEY (`name`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; INSERT INTO `sort_test`(`name`) VALUES ("0"),("1"),("a"),("_"); SELECT `name` as `M

    PHPとMySQLのソートが一致しなくて禿げた - Qiita
    kno
    kno 2017/08/02
    "LAMP環境とはなんだったのか!!"それなw
  • テンプレートエンジンのくせに最近のPHPはオブジェクト志向やらDIやらイキり始めた件 - JavaScriptをがんばるブログ

    ※2017/05/29現在Repositoryの章までしか聞けていません。聞いている際に浮かんだインスピレーションが揮発しないよう永続化する為に書いた記事です。 php-genba.shin1x1.com まさか日語でこの内容を聞けるコンテンツがあるとは思わなかったです。 これは英語をマスターすれば Sound of Symfony The Laravel Podcast Ruby on Rails Podcast JavaScript Air devchat.tv などのPodcastからより多くの興奮を得られる事を意味します。 プログラミング経験3年、細かい修正ばかりで設計レベルの経験値が全くない自分ですが、各章について以前から個人的に思っていた事、お三方の知見からインスピレーションを得た内容を書き残します。 1. DI 「依存性の注入(Dependency Injection)」と

    テンプレートエンジンのくせに最近のPHPはオブジェクト志向やらDIやらイキり始めた件 - JavaScriptをがんばるブログ
  • 2017年のPHPフレームワーク——2強時代に何を学ぶべきか?

    動きの早いフロントエンド界隈や他の言語の躍進の話題に押されて、いつまでも古い知識のままPHPで開発していませんか? 知識のアップデートに役立つ、最近のフレームワークの動向を、ちょっと辛口な現状分析とともに。 私が約1年前に書いた記事の続きを書くことにしたのは次の質問を受けたからです。 Q:PHP MVCフレームワークについて近況を教えてください。(2017/2/24) A:PHPのフレームワークといえば、現時点ではLaravelとSymfonyに尽きます。これから新しいプロジェクトを始めるなら、わざわざCakePHP、Zend、CodeIgniter、Yiiなどを使う理由は見当たりません。これらのフレームワークを使い慣れているか開発経験のある開発者がいないのなら、使う理由はないでしょう。 実際に開発が始まったら、ツールやプラグインを集めたり、よくある問題への対処方法を調べたりする必要があり

    2017年のPHPフレームワーク——2強時代に何を学ぶべきか?
  • PHPMailerのリモートコード実行脆弱性(CVE-2016-10033)の影響範囲 - Qiita

    今回の脆弱性 CVE-2016-10033 CVE-2016-10045 CVE-2016-10074(Swift Mailer) 追記 2016/12/28 14:15 Postfixを使っていて、sendmailコマンドの代わりにPostfixのsendmailコマンドを使っている場合は、Postfixのsendmailコマンドが -X オプションを無視するようですので大きな影響を受けないと思います。ただ、別のオプションで違う脆弱性が発生する可能性もあるので、PHPMailerはアップデートしたほうが良いですね。 2016/12/28 15:35 PHPMailer5.2.18の修正を回避する新しい攻撃が見つかり、 CVE-2016-10045として登録されその攻撃方法も公開されてます。こちらはPHPMailer5.2.21で対応されています。 この攻撃は、PHPMailer5.2.1

    PHPMailerのリモートコード実行脆弱性(CVE-2016-10033)の影響範囲 - Qiita
  • CakePHP の書き方 | php-tips.com

    この記事は、CakePHP3 Advent Calendar 2016 25日目の記事ではありません。 まとめ Controller/Componentにビジネスロジックを書かない カスタムfindを活用しよう 1テーブル1モデルではなく、場面によってモデルクラスを増やそう Modelless Form / Tableless Modelを活用しよう beforeSave/afterSaveは諸刃の刃 Behaviorにビジネスロジック書くのもあり View層ではView Cell/View Blockを活用しよう CRUDプラグインお勧め この記事を書いた動機 CakePHPにおいてビジネスロジックに該当するものをComponentに書くという記事を見かけるたびに、それはアンチパターンじゃないのと感じている日々。 ビジネスロジックをどこに書くべきか、共通処理をどこに書くべきかというのを、

    CakePHP の書き方 | php-tips.com
  • PHP でどのように Exception/RuntimeException/LogicException を使い分けるか - Qiita

    PHP は各種プログラム言語の中でも比較的高級な (表現力が豊かで最適な記述を選ぶのに知識を必要とする) 例外モデルを持っていると言えます。そんな PHP の例外の各区分とその使い分けを整理し、PHP の例外モデルの設計意図を考察したいと思います。 PHP例外の分類 PHP の例外は Java とは異なり、(Error を合わせると) 合計 4 つの区分に分類されます。Java には 2 区分しかありません。(PHP では JavaError に相当するものは発生しません。PHPError は Java では RuntimeException の一種に分類されています) PHP Java

    PHP でどのように Exception/RuntimeException/LogicException を使い分けるか - Qiita
  • PHP 5からPHP 7への移行で、Tumblrはレイテンシが半分、CPU負荷も半減。テストツールでPHP 7への移行に問題ないかをチェック

    PHP 5からPHP 7への移行で、Tumblrはレイテンシが半分、CPU負荷も半減。テストツールでPHP 7への移行に問題ないかをチェック PHPの10年ぶりのメジャーバージョンアップとして昨年12月に登場した「PHP 7」は、PHP 5と比べて2倍以上の実行速度を実現するとリリース前からPHPの生みの親であるRasmus Lerdorf氏自身が説明してきました。 PHP 5からPHP 7へと内部システムのアップデートを行ったTumblrはその成果をブログで発表し、たしかにPHP 7のへ移行したことで実行速度が2倍になったことを裏付けています。 静的解析と自動テストでPHP 7への移行に問題がないかを確認 Tumblrが公開したブログ「Tumblr Engineering — PHP 7 at Tumblr」によると、Tumblrがその内部で稼働しているシステムをPHP 5からPHP 7

    PHP 5からPHP 7への移行で、Tumblrはレイテンシが半分、CPU負荷も半減。テストツールでPHP 7への移行に問題ないかをチェック
    kno
    kno 2016/11/16
    ほう/PHP4→5移行より大変そうだけど、そうでもない?
  • PHPでは正規表現コンパイル結果のキャッシュが暗黙に行われている - hnwの日記

    筆者がPHPをさわり始めたころ、「PerlのコレはPHPではどうやるんだろう?」と思うことが頻繁にありました。一部の疑問については解説を見つけたり自分でソースコードを読んだりして解決したものの、考えるのをやめてしまったものもあります。その一つが正規表現コンパイル結果の保存に関するもので、最近まで完全に忘れていました。 正規表現のコンパイルというのは与えられた正規表現を解釈して実行しやすいデータ構造に変換する作業のことを指します。具体的にはDFA(決定性有限オートマトン)を構成するか、正規表現エンジン内部で用いられるVM命令列に変換するかといった処理になります。これらは複雑な処理ですので、性能の観点で言えば同じ正規表現に対するコンパイル処理はできるだけ繰り返したくありません。 Perlの場合、/foobar/ のようなスタティックな正規表現のコンパイルは1回しか行われません。一方で、正規表現

    PHPでは正規表現コンパイル結果のキャッシュが暗黙に行われている - hnwの日記
    kno
    kno 2016/10/29
    "正規表現のキャッシュサイズが4096であるため、それ以上の種類数にしてしまうと毎回キャッシュが追い出されてしまって都度正規表現コンパイルが走るので非常に遅くなる"
  • #逃げ恥 で星野源がPHPコードを書いているシーンに着目する人たち

    ぱそきいろ @takacpu55 逃げ恥の一話見たけど、ガッキーの可愛さよりも納期直前の仕様変更により徹夜でプログラム組むSEの方が印象に残った 2016-10-23 11:05:58

    #逃げ恥 で星野源がPHPコードを書いているシーンに着目する人たち
    kno
    kno 2016/10/27
    $_POSTに代入はさておき、15年くらい前(PHP3時代?)によく見た感じのソースだなあ/複数行分の検索項目(ここでいう会社・店コード)でOR検索を強いられる仕様とか、配列嫌いで変数がものすごい数になってるPGとか
  • 小規模PHPアプリケーションをDeployerでサッとデプロイする話 - コネヒト開発者ブログ

    こんにちは! 東京なのに周辺にポケストップが1つもない田舎に住んでいます、@fortkle です(世田谷公園の徒歩圏内に引っ越したいです)。 さて、みなさんはPHPアプリケーションのデプロイツールに何を使っているでしょうか。 今回コネヒトで Deployer というPHPで書かれたデプロイツールを採用したのですが、なぜDeployerなのかという理由と、実際に使っているおすすめの設定をいくつか共有したいと思います。 ※ Deployerのインストール方法や基的な使い方を知りたい場合は既にインターネット上に良い記事がたくさんあるのでそちらを参考にしてみてください。 デプロイツール、どうする? 今回、新しく小規模PHPアプリケーションをデプロイする機会があったため下記の条件で新しくデプロイツールの選定を行いました。 PHPのアプリケーションなので デプロイツールもPHP製のもの を採用したい

    小規模PHPアプリケーションをDeployerでサッとデプロイする話 - コネヒト開発者ブログ