PHP

正規表現でファイルの拡張子を取り除く方法。

2010.03.28 / Notes

PHPの正規表現によるパターンマッチで、ファイル名から拡張子を取り除いた文字列を取り出す方法です。

パターンマッチ内の1つ目のパーレン「(.+)」で、任意の1文字以上の文字列を表します。
2つ目のパーレン「(\.[^.]+$)」で、文末にある、ドット1文字から始まり、ドット以外の1文字以上の文字列を表しています。
「$1」の部分を「$2」とすることで、2つ目のパーレン(上記の場合「.txt」となります)を取り出すことができます。

ActionScriptからPHPの関数を実行。

2010.02.07 / Labs

ActionScriptからPHPを実行するには、「URLLoader」を使ってPHPファイルにアクセスすることができます。その際に引数を渡すには「URLVariables」でGET、またはPOSTの変数を渡すことができます。
この方法では、アクセスするPHPファイル全体を実行します。

 

PHPファイル内の任意の関数のみを実行するには、ActionScriptからGET、またはPOSTの変数を経由し、PHPの関数名の文字列を変数で渡して、PHP側で文字列を関数名として評価することで任意の関数を実行できます。

 

ActionScriptでは、次のように記述します。(ドキュメントクラスに書いています)

PHPファイル「functions.php」にPOST変数で関数名「function_name」を文字列で渡します。PHPファイルの読み込み(実行)が完了したら「onComplete」にて、PHPで出力された文字列「event.target.data」を扱えるようになります。

 

PHPファイル「functions.php」には、次のように記述します。

「$function」にPOST変数の「function_name」を代入して、同名の関数が存在していたら実行します。
PHPから出力された文字列は、そのままActionScriptで受け取ることができます。

SWFを表示しているURLの取得方法。

2010.02.06 / Notes

ActionScriptでSWFの置かれているパスではなく、実際に表示されているページのパスを取得するにはJavaScript、またはPHPとの連携で可能になります。

Javascriptの場合

ActionScriptからJavascriptの関数を実行する「ExternalInterface」で行えます。
HTML内に、パスの値を返すJavaScriptの関数を加えます。

ActionScriptではJavaScriptの関数を実行して、戻り値を変数に格納します。

PHP(&FlashVars)の場合

PHPでActionScriptに値を渡すには、FlashVarsを利用する方法が簡単です。
PHP内のFLASH埋め込みのコード内に、PHPで動的に取得したパス情報を、FlashVars経由でSWFに渡します。

ActionScriptではFlashVarsの値を「loaderInfo.parameters」で取り出します。

WordPressで記事のXMLを出力。

2010.01.16 / Notes

テンプレートWordPressのページ機能を使って、投稿記事の情報をXMLに書き出す方法です。
WordPressのページ機能は、主に固定ページを扱うために用意されていますが、表示テンプレートをコントロールすることで、投稿記事のリストを動的にXMLで出力することもできます。

ページのテンプレート変更には、使用しているテーマのフォルダにテンプレートファイルを入れることで、ページ編集画面の「属性」から切り替えが可能になります。

次のコードは最近の記事10件のタイトル、抜粋、リンクをXMLで出力するテンプレートです。

テンプレートの作成で注意する点は、WordPressにテンプレートファイルであることを認識させるために、コードの先頭にコメントで「Template Name」を記述する必要があります。これにより、編集画面で選択が可能になります。テンプレートのファイル名は特に指定はありません。

WordPressの記事をXMLで出力することで、FLASHコンテンツ内で表示したりなど、他のコンテンツとの連携がやりやすくなります。

Codaのプラグイン作成。

2010.01.04 / Labs

Codaで制作効率をアップさせる、ちょっとしたプラグインの作成方法です。
プラグインを作成するには専用のツールが必要になります。Panicサイトの Codaデベロッパゾーンで「Coda Plug-in Creator」が配布されているので、こちらをダウンロードします。サンプルプラグインも同時に配布されていて、初めてプラグインを作成する際に参考になります。

 

「Coda Plug-in Creator」を起動すると新規ウィンドウが開かれます。

今回はシンプルに、選択したテキストに対して<p>、<div>などの任意のタグで囲むだけのプラグインを作成します。実は、サンプルプラグインにも同様のものが含まれていて、それをもとに作成しています。
CodaのプラグインのスクリプトそのものはPHP(またはCocoa)で書かれていて、上記のウィンドウではそれらを管理し、プラグインを構成していきます。

 

プラグイン編集中のウィンドウです。編集の大まかな流れは以下のようになります。

  1. コマンドの作成
    プラグイン内のコマンドを作成します。作成したコマンドは左ペインに登録されて、右ペインで編集が可能になります。左ペインの「Shortcut」の箇所をクリックしてショートカットを設定することもできます。
  2. スクリプトの作成、または編集
    作成したコマンドを選択すると、「Script」がアクティブになり、スクリプトを作成することができます。すでに作成されていると編集になります。スクリプトファイルはプラグインファイルに内包されます。
  3. 入力テキスト
    入力テキストの扱いを指定します。選択テキストのみ、ドキュメント全体、選択なしなど。
  4. 出力テキスト
    スクリプトを実行した後の、出力テキストの扱いを指定します。選択テキストを置き換え、ドキュメント全体を置き換えなど。
  5. ポインターの位置
    スクリプトを実行した後の、テキストポインターの位置を指定したい場合にチェックします。その場合スクリプト内に記述する「$$IP$$」にポインターが移動します。

 

作成したスクリプトファイルには、このように記述しています。(<p>で囲む場合)

プラグインの作成が完了したら、保存して書き出されるプラグインファイルを「Application Support/Coda/Plug-ins」フォルダに入れます。これでメニューの「Plug-ins」から実行可能になります。