「テキストエディタ」タグアーカイブ

【デジタル】PHPバージョンの問題とコーディング、ツールについて

前々から、とりあえず「動くからいいや」的にサーバー移行せずに使っています。が、「テーマ」「プラグイン」の実装においては種々の問題が出てくるのは事実。特に、PHP構文の違いでプラグインが動かないケースが散見されるのが痛い。一番良く起きるのが、下記のケース。

Parse error: syntax error, unexpected ‘[‘

これ、何かと言うとPHP5.4以降で使えるようになった「配列の短縮構文」がうちのサーバーのPHPバージョンが古いせいで「なにこれ?わかんない」と行っているという現象。今回DLして使おうとしたプラグインに書いてあった当該列の記載は下記の通り。

マークされている行が、今回問題になった記述記載部分です。僕が使っているコーディング用ソフトは「mi」です。エンコーディングや改行コードがどのようになっているのかをきちんと確認しながら進める作業があるため、コーディングについてはこのようなソフトを活用されることをお勧めします。ちなみに、会社では今後GitHubを選択する可能性が高いため「ATOM」を活用しています。

<?php if(in_array(get_site_url(),[‘http://www.managingio.com’,’http://blog-latest.socialshare.com’,’http://wp.192.168.0.135.xip.io’])): ?>

ここで出てくる「[」がNGになってるんですね。これでいうと、「[]」で挟まれてくる部分のURLを取得に行くという文章。簡単にいうと、「もし、この先の部分に[]内の三つのURLがあったら」というもの。arreyは配列変数で、通常一対一で紐付けされるものを複数選べるという代物。ただ、僕の借りているサーバーのPHPのバージョンが5.2.3なんでそもそも「[]」が使えなかったという話です。前段書いた記述は『配列の短縮構文=「array()→[]」』ということなのです。これが、うちのサーバーで受け付けないという話ですね。多分、ここだけの問題じゃないからこのプラグインは使えないかなぁ。今のとこ、大きな問題起きてないけど今後も気をつけないとだなぁ。ちなみに、URLをhtml内で記載するときもプラグインが必要なんだけど手書きで入れる際は「&lt;(記述時は半角ね)」で対応可能です。何故「lt」は何かというと、「less-than sign」の略。参考までに、閉じは「greater-than sign」なので「&gt;(記述時は半角ね)」覚えておくとこの手の文章を書くときに楽です。実体参照の一覧、便利なのでリンクも入れておきます。マークアップ記号だけは、覚えといても損しませんよ。

文字実体参照

あとは、コーディング用テキストエディタのリンクもいくつか。
mi
Jedit Ω
ATOM
僕はずっとJeditを使っていたのですが、バージョンアップが面倒でmiに移行しています。miはフリーエディタなんですが、様々な環境に対応していていいなと思います(できれば、お仕事でお使いになる方はドネーションしてあげてください!)。しかしながら、今後使い続けるかについてはまだ検討中。JChecker XってツールがJeditとセットであったんですけど、これが恐ろしく便利だったんです。デバグがありえないほど楽だったので。ただ、このツールは更新されていない。これが復活したら、Jeditに戻してもいいかなぁと思います。慣れてるし。ATOMは、まだ使い始めたばかりなのでよくわからずだけど、基本UTF-8なんで日本語がマァマァ化けるのが面倒だなとか思っています(これは、コードを指定すればなんとかなるのですけどね)。auto-encodingは基本仕様に入っていないので、DL→Installの必要がありますので注意!タブ管理は、圧倒的にJeditの方が使いやすいですね。

アイキャッチ画像は、昨年2018年11月末に新宿で撮影した写真じゃないかと。わからんけどw