PHP

Cloud Functionsを利用して、SlackからChatGPTを呼び出すSlack Appをつくる

はじめに ChatGPT APIの練習として、N番煎じだが、SlackからChatGPTを呼び出すSlack Appを実装した。 Appの概要は、メンションで受け取ったメッセージをChatGPT APIにリクエストし、返答を同チャンネルに書き込む。 ふるまいの前提となるようなキャラクター…

Cloud FunctionとCloud Schedulerで読書ログをリマインドする

背景 色々試して行き着いた読書方法 まとめたメモは、Notionのリマインド機能を使って、1か月後に「自分にメモを読み返すように通知」を飛ばしています こちらのブログに刺激を受け、 自分も読書ログを書いているが、完全に書きっぱなしになっているのをなん…

docker-php-ext-installのjオプションは同時に実行するジョブ数

タイトルが結論である。 Cloud RunのPHPサンプルを調べているときに、下記のnprocの結果を引数にしているjオプションが気になり、調べた。 RUN docker-php-ext-install -j "$(nproc)" opcache php-docs-samples/Dockerfile at d4e33719cb0ddeb38324b8f07109b…

PhpStormで開いているファイルとプロジェクトツリーを同期させる設定

設定方法 Projectを右クリック -> Always Select Opened File にcheck hoge どういうときにこの設定するのか? PhpStormの検索は強力です。 ⌘O:クラス検索 ⇧⌘O:ファイル検索 ⌥⌘O:シンボル検索 Macであれば上記のようなショートカットで範囲を絞りながら検索…

BEAR.Sundayを採用した理由

2019/04/02 下記の箇所を修正と追記 もちろん、それぞれ別のインターフェイスで実装すればいいじゃないかという話もあるとは思います 前置き 先日のPHPerKaigi2019で 「たった1人のAPI開発 BEAR.Sundayで解決した課題たち」という題目で発表させていただきま…

PHP Conference 2018 GROWTH 参加レポート

概要 phpcon.php.gr.jp おなじみの国内最大級のPHPに関するイベント 2018/12/15(土)10:00 - 特に印象に残った3つのセッションについてまとめます PHPのいまとこれから 2018 発表の概要 PHPの歴史や背景からPHP7.3やPHP7.4について 会場の約3割がPHP5系という…

超簡単!5分でつくるSlackBot

charlie1012.hatenablog.jp 上記の記事を活用して、「5分プログラミングSlackBotとmonolog」というタイトルで 5分でSlackBotを実装するライブコーディングLTを発表しました Monologを活用したBotは簡単ですが、応用範囲は広く、有用です 日々の数値報告やエ…

Bear.SundayとRMパターン

BEAR.Sunday 社内でBear.Sundayを活用した設計パターンについて発表した資料です Bear.SundayでなにをResourceにして、なにをResourceにしないのか またResource以外をどういう構成,設計で実装するべきなのかということをよく悩んでいました "そこそこよさそ…

PhpStorm Tips [随時追記 最終更新:2018/07/30]

DirectoriesでExcludedを設定するとindexの対象から外せる そんなに node_modules が重要ではないプロジェクトとかだと、 こいつを設定しておくとindexもはやくなり、検索もノイズが減るので幸せ 省電力モードがある 外出先などで利用のときは設定しておくと…

monologのHandlerを利用してSlackBotをつくる

概要 PHPをお使いの皆様にはおなじみのmonologを利用してSlackBotをつくる方法を紹介します monolog github.com PHPのLoggingライブラリ PHPのLoggingライブラリではほぼ一択でmonologです SlackBot SlackBotには大きく2種類あります 一方通行の投稿 投稿内…

PHPを用いてTwitterにつぶやく

実装したリポジトリ github.com 利用ライブラリ vlucas/phpdotenv abraham/twitteroauth 準備 https://apps.twitter.com/ Create New App から アプリケーション を 作る つぶやくには Key and Access Tokens から 下記の4つを取得する Consumer Key Consume…

PHPでGoutteを用いてスクレイピングをおこなう

概要 スクレイピングを行う場合、 よく用いれられる言語として、PythonやRuby,node.jsなどがあげられると思います PHPでも基本的ななことはできるので、スクレイピングライブラリといくつかの例を紹介します 利用ライブラリ Goutte SymfonyのCssSelector and…

PHPでターミナル等のCLI標準出力に色などをつけるライブラリを公開しました

packagist.org PHPでターミナル等のCLI標準出力に色などをつけるライブラリを公開しました 類似のライブラリの場合は装飾の色をStringで指定することが多かったのですが、 typoや装飾を複数したい場合の対応などに不満があり、実装&公開しました インストー…

学びたいことがいっぱい!

今週のお題「いま学んでみたいこと」初めての今週のお題! 学びたいことを5つほど書きました 上からモチベーション順! アルゴリズム,競技プログラミング 大学生時代は趣味レベル競技プログラマーだったわけですが、 最近はめっきりやりらなくなってしまいま…

自分でwebサービスを開発,公開して分かった3つのこと

とても参考にさせていただいたスライド エンジニア向け絶対に挫折しない個人サービスの作り方先日公開したwebサービス www.simpleit.info シンプルIT勉強会リストの紹介記事はこちら charlie1012.hatenablog.jp 個人でwebサービスを開発して、公開まで行…

SlimでシンプルなIT勉強会が探せるサービスを開発してみた【シンプルIT勉強会リスト】

前回 charlie1012.hatenablog.jp slimを使って簡単なwebサービスを開発してみました シンプルIT勉強会リスト www.simpleit.info 全体像 バッチで勉強会の情報が入ったファイルを生成しておいて、slimからそれを読み込んで表示するという、作りもシンプルなも…

PHPのインストールとslimフレームワークの導入

前回 charlie1012.hatenablog.jp 前提として上記の記事の設定が済んでいると仮定してします今回は PHP,Apacheのインストール、そしてslimフレームワークのインストールを行います PHPのインストール sudo aptitude install php5バージョンを確認しておきまし…