サーバサイド | みどりのウェブ開発日記

サーバサイド

PHP で HTML タグを除去する方法(複数行対応)

コメントを読んでいただければ分かると思いますが、補足です。 「strip_tags」を使えば HTML タグは除去できるのですが、複数行には対応していません。 よって、事前の下処理として、「改行コード」「タブ」「空白」を […]


PySimpleGUI: ビルドで Failed to execute script pyi_rth_tkinter と出て失敗する場合

以下のディレクトリとファイルをすべて削除します。 それでもダメな場合は、管理者権限で実行すればビルドが出来るようになりました。 /__pycache__ /build /dist [実行アプリ化したい Python スク […]


あると便利な PHP の配列関数

作った理由 とあるプロジェクトで自動化システムを作っています。 大変複雑で、配列を使いまわしているうちに、何度も使う処理を必要にかられて関数にしました。 なんでこういう関数がないんだろう? と同じように思われている方の参 […]


Laravel の helper.php で Carbon を使うには

PhpStorm を使っていれば補完機能が働きます。 が、Illuminate のクラスも表示され、どっちだっけ…と迷わないために覚書です。 use Carbon\Carbon; これで普通に helper.php 内で […]


「P++」騒動に見える PHP の民主主義

「P++」騒動とは ツイッターでPHPの拡張版「P++」が提案されたけれど、 「全員一致で却下された」というツイートを見かけました。 一部の記事では「P++がすごい」などと書かれたようですが、 現状、PHPコミュニティで […]


PHP 5.1, WordPress3 から、PHP 7.3.1, WordPress5 へ移行したケース

表題のとおりですが、環境を用意するのは、Windows なら XAMPP がてっとり早いので、古いバージョンを取得してきます。 今回の場合、5.6 で試したところ、動きましたので、PHP 5.1 の XAMPP がなくて […]


Dreamweaver で CakePHP の .ctp ファイルなど標準では開けない拡張子ファイルを開くようにする

Dreamweaver で CakePHP のソースを見なければいけない機会がありました。ところが拡張子 .ctp のファイルが開きません。PhpStorm や NetBeans なら簡単に設定できるのですが…。 Dre […]


早い! 今日からエックスサーバでPHP7.2が使えます!

たった今、エックスサーバからメールがきました。   今日からPHP7.2が使えるそうです! 業界でもトップクラスの対応の早さ。 どんどん高速化されて、嬉しい限りです。  そもそも、PHPはバージョン6が在りません。 5の […]


Akismet のキーの有効期限が切れた場合

2011年ころから、7年間このサイトを運営してきましたが、はじめてAkismetの有効期限が切れました。 Akismetは、WordPress のコメントスパムをしりぞけてくれる、嬉しいプラグインです。 新しいキーの取得 […]


EC-CUBE3 のインストールでデータベースエラーが出たときに確認すること

仕事で EC-CUBE3 を使うことになりそうだったので、早速、公式サイトに会員登録して、ZIP をダウンロードしてみました(2018年2月中旬のこと)。 Webインストーラーを使って、STEP3 で…エラーがずらりと出 […]


「PHPカンファレンス関西2017」参加してきました(いろいろまとめ)

2017.07.15(土) 、天候は晴れ。 場所は、グランフロント大阪(北館・タワーC8階/カンファレンスルーム)でした。 田舎者なので、近代的で巨大な建物にびっくりしてました。 今回のカンファレンスでは、基調講演でもあ […]


PHP 高速化: あいまいな判定の回避

あいまいな書き方とは PHP を早く書くための基本として、型を明示的にすること、あいまいな判定はしないこと、があげられると思います。 あいまいな判定でいうと、 === ではなく、== と書く。 または、 !== ではなく […]


Trello のクローン「php-simple-kanban」を英語にも対応しました

GitHub の ReadMe を英語で書いていたら、昨日、以下のメッセージが。 「英語バージョンはないの?」と…。 ということで、英語/日本語を config/define.php で切り替えられるようにしました。 以 […]


Trello のクローン「php-simple-kanban」に検索と画像表示機能を追加しました

自作の OSS の更新情報をお伝えします。 Github: https://github.com/mikiakira/php-simple-kanban 検索機能を追加 前から欲しかった機能です。 カードの件名と本文を対 […]


PHP の正規表現で preg_match がおかしい時は pcre.backtrack_limit の上限を増やしてみる

何が起きたか PHPの正規表現のパターンマッチ数には、上限があり、ローカルの nginx は 1,000,000 だが、Heroku はそれより少ない(おそらく 100,000) のため、例外が発生した pcre.bac […]


Slim と Twig を連携するとモデル抜きの軽量フレームワークができ、高速でサイトが作れる件について

機能自体は目新しいこともないのですが、 やってみるとやっぱり軽量で、導入も手軽なので嬉しいものです。 WordPress の設計もそうですが、PHP の優れた産物のひとつということで、 この組み合わせについて、考えをまと […]


フィードパースライブラリ SimplePie の使い方

RSSリーダを作りたいなと思っていて、ライブラリは SimplePie を使うと決めています。 このライブラリは、DokuWiki でも使われています。 記事を取得するだけなら、この記事の内容をコピペするだけでOKです。 […]


PDO 入門(データベース接続まで)

PDO は、PHP に用意されているデータベース接続クラスです。 SQL インジェクション攻撃に対する最大の防御ですので、これを使うことはデータベース管理において必須です。 ※ SQL が得意な人は、SQL を書きたがる […]


PHP 5.6 以降では、定数に配列が使えます

これは知らなかったので、ちょっとショックです。 試しに調べてみたら、ドキュメント(「定数」)にちゃんと書いてあったので、すぐに分かりました。 const ANIMALS = array(‘dog’, ‘cat’, ‘bi […]


PHP ビルトインサーバの使い方

ここ二、三年、PHPを使ったことのない人に紹介すると驚かれるのですが、PHPは単体でウェブサーバの機能を実行することができます。 PHPさえインストールしていれば実行できるので、大変便利ですし、開発環境として重宝します。 […]


PHP5 系から PHP7 への移行チェックツール php7cc を使ってみました

概要 ・GitHub https://github.com/sstalle/php7cc GitHubの概要をざっと訳すと、下記になります。 php7cc は、PHP 5.3 ~ 5.6 から、PHP 7への移行を容易に […]


DokuWiki が PHP7.1 に対応しました(2017.02.19)

人気の高いPHPのオープンソースのひとつである「DokuWiki」。 私も昨年度より、仕事に、プライベートにとフル活用しています。 標準テンプレートでモバイルにも対応しているし、データベース不要で、高速な全文検索。 コー […]


PHPエラー: Namespace declaration statement has to be the very first statement

PHP で名前空間を使うようになると遭遇するエラーかと思います。 namespace の宣言の前で require で外部ファイルを読んでいたのが原因でした。 公式のドキュメントによりますと、 「名前空間を含むファイルで […]


PHP のサポート期間とバージョンごとの一覧表

PHP は、数年でサポートが切れるサイクルを繰り返しています。 仕事で使っている大事な言語なので、どのようなバージョン管理になっているか、確認してみました。 ※ Qiita に同様の記事を投稿しています。 ※ 2019. […]


Trello のクローンを PHP で作りました

※ Qiita にも同じ記事を掲載しています。 ※ 2017.02.14 MOONGIFT さんでご紹介されました。 ※ 2017/04/27 検索機能を […]


PHP Composer を高速化する方法を簡単にまとめました

便利ですが、重たい PHP のパッケージマネージャの Composer を、とても早くできる方法をまとめました。 結論から言うと、ご紹介するコマンドを2回たたくだけで、次のことが可能になります。 ↓ ・Composer […]


ほぼPHPでGulpやGruntのようなタスクランナーを自作する

今回は、サーバサイドのエンジニアとして、タスクランナーについて考えていたことをまとめてみました。 一時期、タスクランナーにはまったことがありました。 最初はGruntで、次はGulpでした。 どちらも素晴らしいのですが、 […]


Notepad++ で tail -f する方法

※ (2016.12.11更新) v7.2.2 になって、「表示」メニューに「ファイル監視 (tail -f)」が追加されました。 以下の記事は、標準メニューにファイル監視がないバージョンでの対応方法になります。 Her […]


[PHP x Ajax] 非同期でセッションを複数処理する場合の注意点

発生した問題点: 時間のかかる非同期処理を実行 -> その処理が終了する前に画面遷移 画面遷移後、セッションを更新していると、前の画面の処理が終わった瞬間、セッション情報が古くなってエラーが発生 どうやら、非同期処 […]


PHP 配列を初期化しながらセットすると Undefined offset になる事例

PHP x Phalcon で遭遇した事例です。 Postgres のストアドクロシージャの処理をPHPに移植する案件ではまりました。 ↑ こんな環境も珍しいでしょうが…。 配列を初期化したあと、指定した回数回して、自分 […]



トップに戻る