px
in package
Pickles 2 core class
Tags
Table of Contents
- $bowl : mixed
- オブジェクト
- $conf : mixed
- オブジェクト
- $custom_dynamic_property : mixed
- 動的に追加されたプロパティ
- $directory_index : mixed
- ディレクトリインデックス(省略できるファイル名の一覧)
- $errors : mixed
- エラーメッセージ情報
- $fs : mixed
- オブジェクト
- $lang : mixed
- 言語コード
- $path_content : mixed
- コンテンツディレクトリのパス
- $proc_id : mixed
- プロセス関連情報
- $proc_num : mixed
- プロセス関連情報
- $proc_type : mixed
- プロセス関連情報
- $pxcmd : mixed
- オブジェクト
- $realpath_homedir : mixed
- Pickles 2 のホームディレクトリのパス
- $relatedlinks : mixed
- 関連ファイルのURL情報
- $req : mixed
- オブジェクト
- $response_headers : mixed
- HTTP Response Header List
- $response_message : mixed
- 応答ステータスメッセージ
- $response_status : mixed
- 応答ステータスコード
- $site : mixed
- オブジェクト
- __construct() : mixed
- Constructor
- __destruct() : null
- Destructor
- __get() : mixed
- 動的に追加されたプロパティを取り出す
- __set() : mixed
- 動的なプロパティを登録する
- add_relatedlink() : bool
- 拡張ヘッダ `X-PXFW-RELATEDLINK` にリンクを追加する。
- bowl() : object
- `$bowl` オブジェクトを取得する。
- canonical() : string
- リンク先の正式なURLを生成する。
- conf() : object
- `$conf` オブジェクトを取得する。
- convert_encoding() : string
- テキストを、指定の文字セットに変換する。
- error() : bool
- エラーメッセージを送信する。
- fs() : object
- `$fs` オブジェクトを取得する。
- get_contents_manifesto() : string
- Contents Manifesto のソースを取得する。
- get_directory_index() : array<string|int, mixed>
- `directory_index` (省略できるファイル名) の一覧を得る。
- get_directory_index_preg_pattern() : string
- `directory_index` のいずれかにマッチするための pregパターン式を得る。
- get_directory_index_primary() : string
- 最も優先されるインデックスファイル名を得る。
- get_domain() : string
- ドメイン名を取得する。
- get_errors() : array<string|int, mixed>
- 送信されたエラーメッセージの一覧を取得する。
- get_path_content() : string
- コンテンツのパスを取得する。
- get_path_controot() : string
- コンテンツルートディレクトリのパス(=install path) を取得する。
- get_path_docroot() : string
- DOCUMENT_ROOT のパスを取得する。 (deprecated) このメソッドの使用は推奨されません。 代わりに `$px->get_realpath_docroot()` を使用してください。
- get_path_homedir() : string
- ホームディレクトリの絶対パスを取得する (deprecated) このメソッドの使用は推奨されません。 代わりに `$px->get_realpath_homedir()` を使用してください。
- get_path_proc_type() : string
- ファイルの処理方法を調べる。
- get_path_type() : string|bool
- パス文字列を受け取り、種類を判定する。
- get_pickles_logo_svg() : string
- Pickles 2 の SVG ロゴソースを取得する。
- get_px_command() : array<string|int, mixed>
- PX Command を取得する。
- get_realpath_docroot() : string
- DOCUMENT_ROOT のパスを取得する。
- get_realpath_homedir() : string
- ホームディレクトリの絶対パスを取得する。
- get_relatedlinks() : array<string|int, mixed>
- 拡張ヘッダ `X-PXFW-RELATEDLINK` に追加されたリンクを取得する。
- get_scheme() : string
- スキーマ名を取得する。
- get_status() : int
- response status code を取得する。
- get_status_message() : string
- response ステータスメッセージを取得する。
- get_version() : string
- Pickles Framework のバージョン番号を取得する。
- h() : string
- HTML特殊文字をエスケープする
- header() : null
- HTTP ヘッダを送信する。
- header_list() : array<string|int, mixed>
- 送信した (もしくは送信される予定の) レスポンスヘッダの一覧を返す。
- href() : string
- リンク先のパスを生成する。
- internal_sub_request() : mixed
- Pickles 2 内部でサブリクエストを発行し、結果を受け取る
- is_ignore_path() : bool
- 除外ファイルか調べる。
- is_locked() : bool
- アプリケーションロックされているか確認する。
- is_path_enable_sitemap() : bool
- サイトマップのロードが有効なパスか調べる。
- is_publish_tool() : bool
- 実行者がパブリッシュツールかどうか調べる。
- lang() : string
- 言語コードを取得する
- lock() : bool
- アプリケーションロックする。
- mk_link() : string
- リンクタグ(aタグ)を生成する。
- path_files() : string
- ローカルリソースディレクトリのパスを得る。
- path_files_cache() : string
- ローカルリソースのキャッシュのパスを得る。
- path_plugin_files() : string
- プラグイン別公開キャッシュのパスを得る。
- pxcmd() : object
- `$pxcmd` オブジェクトを取得する。
- realpath_files() : string
- ローカルリソースディレクトリのサーバー内部パスを得る。
- realpath_files_cache() : string
- ローカルリソースのキャッシュディレクトリのサーバー内部パスを得る。
- realpath_files_private_cache() : string
- コンテンツ別の非公開キャッシュディレクトリのサーバー内部パスを得る。
- realpath_plugin_files() : string
- プラグイン別公開キャッシュのサーバー内部パスを得る。
- realpath_plugin_private_cache() : string
- プラグイン別プライベートキャッシュのサーバー内部パスを得る。
- req() : object
- `$req` オブジェクトを取得する。
- set_lang() : bool
- 言語コードを設定する
- set_site() : bool
- `$site` オブジェクトをセットする
- set_status() : bool
- response status code をセットする
- site() : object|bool
- `$site` オブジェクトを取得する。
- touch_lockfile() : bool
- アプリケーションロックファイルの更新日を更新する。
- unlock() : bool
- アプリケーションロックを解除する。
- assemble_path_content_and_proc_type() : array<string|int, mixed>
- $path_content を計算する
- exec_content() : bool
- コンテンツを実行する。
- fnc_call_plugin_funcs() : bool
- call plugin functions
- get_default_mime_type() : string
- デフォルトの MIME Type を取得する。
Properties
$bowl
オブジェクト
private
mixed
$bowl
Tags
$conf
オブジェクト
private
mixed
$conf
Tags
$custom_dynamic_property
動的に追加されたプロパティ
private
mixed
$custom_dynamic_property
= array()
NOTE: Pickles Framework v2.1.14 で追加されました。
Tags
$directory_index
ディレクトリインデックス(省略できるファイル名の一覧)
private
mixed
$directory_index
= array()
Tags
$errors
エラーメッセージ情報
private
mixed
$errors
= array()
$fs
オブジェクト
private
mixed
$fs
Tags
$lang
言語コード
private
mixed
$lang
= null
$path_content
コンテンツディレクトリのパス
private
mixed
$path_content
Tags
$proc_id
プロセス関連情報
private
mixed
$proc_id
Tags
$proc_num
プロセス関連情報
private
mixed
$proc_num
Tags
$proc_type
プロセス関連情報
private
mixed
$proc_type
Tags
$pxcmd
オブジェクト
private
mixed
$pxcmd
Tags
$realpath_homedir
Pickles 2 のホームディレクトリのパス
private
mixed
$realpath_homedir
Tags
$relatedlinks
関連ファイルのURL情報
private
mixed
$relatedlinks
= array()
Tags
$req
オブジェクト
private
mixed
$req
Tags
$response_headers
HTTP Response Header List
private
mixed
$response_headers
= array("Content-type" => array("text/html"))
$response_message
応答ステータスメッセージ
private
mixed
$response_message
= 'OK'
Tags
$response_status
応答ステータスコード
private
mixed
$response_status
= 200
Tags
$site
オブジェクト
private
mixed
$site
Tags
Methods
__construct()
Constructor
public
__construct(string $path_homedir) : mixed
Parameters
- $path_homedir : string
-
Pickles のホームディレクトリのパス
Return values
mixed —__destruct()
Destructor
public
__destruct() : null
Return values
null —__get()
動的に追加されたプロパティを取り出す
public
__get(mixed $name) : mixed
NOTE: Pickles Framework v2.1.14 で追加されました。
Parameters
- $name : mixed
Return values
mixed —__set()
動的なプロパティを登録する
public
__set(mixed $name, mixed $property) : mixed
NOTE: Pickles Framework v2.1.14 で追加されました。
Parameters
- $name : mixed
- $property : mixed
Return values
mixed —add_relatedlink()
拡張ヘッダ `X-PXFW-RELATEDLINK` にリンクを追加する。
public
add_relatedlink(string $path) : bool
拡張ヘッダ X-PXFW-RELATEDLINK
は、サイトマップや物理ディレクトリから発見できないファイルを、Pickles Framework のパブリッシュツールに知らせます。
通常、Pickles Framework のパブリッシュツールは 動的に生成されたページなどを知ることができず、パブリッシュされません。このメソッドを通じて、明示的に知らせる必要があります。
Parameters
- $path : string
-
リンクのパス
Return values
bool —正常時 true
、失敗した場合 false
bowl()
`$bowl` オブジェクトを取得する。
public
bowl() : object
$bowl
(class picklesFramework2\bowl)のインスタンスを返します。
Return values
object —$bowl オブジェクト
canonical()
リンク先の正式なURLを生成する。
public
canonical([string $linkto = null ]) : string
スキーマ、ドメインが補完された完全なURLを返します。
このメソッドは、 設定項目 scheme
と domain
に影響を受けます。 domain
が設定されていない場合にエラーを発行します。
実装例:
<link rel="canonical" href="<?= $px->canonical() ?>" />
Parameters
- $linkto : string = null
-
リンク先の パス または ページID (省略時はカレントページ)
Return values
string —href属性値
conf()
`$conf` オブジェクトを取得する。
public
conf() : object
Return values
object —$conf オブジェクト
convert_encoding()
テキストを、指定の文字セットに変換する。
public
convert_encoding(mixed $text[, string $encode = null ][, string $encodefrom = null ]) : string
Parameters
- $text : mixed
-
テキスト
- $encode : string = null
-
変換後の文字セット。省略時、
mb_internal_encoding()
から取得 - $encodefrom : string = null
-
変換前の文字セット。省略時、自動検出
Return values
string —文字セット変換後のテキスト
error()
エラーメッセージを送信する。
public
error([ $message = null ]) : bool
Parameters
Return values
bool —true
fs()
`$fs` オブジェクトを取得する。
public
fs() : object
$fs
(class tomk79\filesystem)のインスタンスを返します。
Tags
Return values
object —$fs オブジェクト
get_contents_manifesto()
Contents Manifesto のソースを取得する。
public
get_contents_manifesto() : string
Return values
string —HTMLコード
get_directory_index()
`directory_index` (省略できるファイル名) の一覧を得る。
public
get_directory_index() : array<string|int, mixed>
Return values
array<string|int, mixed> —ディレクトリインデックスの一覧
get_directory_index_preg_pattern()
`directory_index` のいずれかにマッチするための pregパターン式を得る。
public
get_directory_index_preg_pattern([string $delimiter = null ]) : string
Parameters
- $delimiter : string = null
-
pregパターンのデリミタ。省略時は
/
(preg_quote()
の実装に従う)。
Return values
string —pregパターン
get_directory_index_primary()
最も優先されるインデックスファイル名を得る。
public
get_directory_index_primary() : string
Return values
string —最も優先されるインデックスファイル名
get_domain()
ドメイン名を取得する。
public
get_domain() : string
$conf->domain
が設定されている場合、これを返します。
設定されていない場合は、環境変数 $_SERVER['SERVER_NAME']
から取得して返します。
ただし、Pickles 2 は ウェブサーバー上で実行されているとは限らないため、 $_SERVER['SERVER_NAME']
は取得できないことがあります。
$conf->domain
を正しく設定する方が望ましい結果が得られます。
Return values
string —ドメイン名
get_errors()
送信されたエラーメッセージの一覧を取得する。
public
get_errors() : array<string|int, mixed>
Return values
array<string|int, mixed> —送信済みのエラーメッセージの一覧
get_path_content()
コンテンツのパスを取得する。
public
get_path_content() : string
Return values
string —コンテンツのパス
get_path_controot()
コンテンツルートディレクトリのパス(=install path) を取得する。
public
get_path_controot() : string
コンテンツルートディレクトリは、PHPの実行ファイル (通常は .px_execute.php
)が設置されたディレクトリを指します。
通常、これは ドキュメントルート($px->get_realpath_docroot()
から得られる) と同じディレクトリですが、
より深い物理階層に Pickles 2 をインストールすることもできます。
この場合、 $conf->path_controot
に ドキュメントルート以下のパスを設定してください。
get_path_controot()
は、このパスを整形して返します。
Return values
string —コンテンツディレクトリのパス(HTTPクライアントから見た場合のパス)
get_path_docroot()
DOCUMENT_ROOT のパスを取得する。 (deprecated) このメソッドの使用は推奨されません。 代わりに `$px->get_realpath_docroot()` を使用してください。
public
get_path_docroot() : string
Return values
string —ドキュメントルートのパス
get_path_homedir()
ホームディレクトリの絶対パスを取得する (deprecated) このメソッドの使用は推奨されません。 代わりに `$px->get_realpath_homedir()` を使用してください。
public
get_path_homedir() : string
Return values
string —ホームディレクトリの絶対パス
get_path_proc_type()
ファイルの処理方法を調べる。
public
get_path_proc_type([string $path = null ]) : string
設定値 $conf->paths_proc_type
の連想配列にもとづいてパスを評価し、
処理方法の種類を調べて返します。
Parameters
- $path : string = null
-
パス
Return values
string —処理方法
- ignore = 対象外パス。Pickles 2 のアクセス可能範囲から除外します。このパスにへのアクセスは拒絶され、パブリッシュの対象からも外されます。
- direct = 物理ファイルを、ファイルとして読み込んだでから加工処理を通します。 (direct以外の通常の処理は、PHPファイルとして
include()
されます) - pass = 物理ファイルを、そのまま無加工で出力します。 (デフォルト)
- その他 = extension名
get_path_type()
パス文字列を受け取り、種類を判定する。
public
get_path_type(string $path) : string|bool
次の基準で判定されます。
-
javascript:
から始まる場合 => 'javascript' -
data:
から始まる場合 => 'data' -
#
から始まる場合 => 'anchor' -
http://
などURLスキーマ名から始まる場合,//
から始まる場合 => 'full_url' - その他で
alias:
から始まる場合 => 'alias' -
{$xxxx}
または{*xxxx}
を含む場合 => 'dynamic' -
/
から始まる場合 => 'normal' - どれにも当てはまらない不明な形式の場合に、
false
を返します。
このメソッドは、以前は $site
に実装されていました。
$conf->paths_enable_sitemap
が導入され、 $site
が存在しない場合が考慮されるようになったことにより、
$px
に移管されました。
Parameters
- $path : string
-
調べるパス
Return values
string|bool —判定結果
get_pickles_logo_svg()
Pickles 2 の SVG ロゴソースを取得する。
public
get_pickles_logo_svg([array<string|int, mixed> $opt = array() ]) : string
Parameters
- $opt : array<string|int, mixed> = array()
-
オプション
- color
- ロゴの色コード
Return values
string —Pickles 2 ロゴの SVG ソースコード
get_px_command()
PX Command を取得する。
public
get_px_command() : array<string|int, mixed>
Return values
array<string|int, mixed> —コマンド配列(ドットで区切られた結果の配列)
get_realpath_docroot()
DOCUMENT_ROOT のパスを取得する。
public
get_realpath_docroot() : string
Pickles Framework v2.0.29 で get_path_docroot()
からの名称変更として追加されました。
Return values
string —ドキュメントルートのパス
get_realpath_homedir()
ホームディレクトリの絶対パスを取得する。
public
get_realpath_homedir() : string
ホームディレクトリは、 Pickles 2 のフレームワークが使用するファイルが置かれるディレクトリで、
主には config.php
, sitemaps/*
, _sys/ram/*
などが格納されているディレクトリのことです。
Pickles Framework v2.0.29 で get_path_homedir()
からの名称変更として追加されました。
Return values
string —ホームディレクトリの絶対パス
get_relatedlinks()
拡張ヘッダ `X-PXFW-RELATEDLINK` に追加されたリンクを取得する。
public
get_relatedlinks() : array<string|int, mixed>
拡張ヘッダ X-PXFW-RELATEDLINK
に、既に追加されているリンクの一覧を取得します。
リンクは、 add_relatedlink()
を通じて追加されます。
Return values
array<string|int, mixed> —正常時 true
、失敗した場合 false
get_scheme()
スキーマ名を取得する。
public
get_scheme() : string
$conf->scheme
が設定されている場合、これを返します。
設定されていない場合は、環境変数 $_SERVER['REQUEST_SCHEME']
から取得して返します。
$_SERVER['REQUEST_SCHEME']
がセットされない場合は、 $_SERVER['SERVER_PORT']
から推測して決定します。
ただし、Pickles 2 は ウェブサーバー上で実行されているとは限らないため、 環境変数は意図通りに取得できないことがあります。
$conf->scheme
を正しく設定する方が望ましい結果が得られます。
Return values
string —ドメイン名
get_status()
response status code を取得する。
public
get_status() : int
$px->set_status()
で登録した情報を取り出します。
Return values
int —ステータスコード (100〜599の間の数値)
get_status_message()
response ステータスメッセージを取得する。
public
get_status_message() : string
$px->set_status()
で登録した情報を取り出します。
Return values
string —ステータスメッセージ
get_version()
Pickles Framework のバージョン番号を取得する。
public
get_version() : string
Pickles Framework のバージョン番号はこのメソッドにハードコーディングされます。
バージョン番号発行の規則は、 Semantic Versioning 2.0.0 仕様に従います。
[開発版]
バージョン番号が振られていない、開発途中のリビジョンを、開発版と呼びます。
開発版の場合、バージョン番号は、次のリリースが予定されているバージョン番号に、
ビルドメタデータ +dev
を付加します。
通常は、プレリリース記号 alpha
または beta
を伴うようにします。
- 例:1.0.0-beta.12+dev (=1.0.0-beta.12リリース前の開発版)
Return values
string —バージョン番号を示す文字列
h()
HTML特殊文字をエスケープする
public
h([string|null $str = null ][, int|null $flags = null ]) : string
htmlspecialchars()
のラッパーです。
Pickles Framework v2.1.12 で追加されました。
Parameters
- $str : string|null = null
-
変換対象の文字列。
null
も受け付けます。 - $flags : int|null = null
-
変換オプション。
htmlspecialchars()
に引き継がれます。 省略時、ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML401
をデフォルトとします。
Return values
string —HTML特殊文字エスケープ後の文字列。
$str
に null
が与えられた場合は、 空白文字列を返します。
header()
HTTP ヘッダを送信する。
public
header(string $string[, bool $replace = true ]) : null
このメソッドは、 PHP の header()
の代わりに使用します。
PHP の header()
は、SAPI に依存しており、 CLI SAPI 上ではヘッダーを送信できません。
このメソッドは CLI SAPI の環境下でも、HTTPレスポンスヘッダーの処理をエミュレートするために用意されました。
$px->header()
を通して送信されたHTTPヘッダーは、 $px->header_list()
から取得でき、 JSON形式の出力(コマンドラインオプション -o json
を付加して実行)時、header
に格納されます。
ただし、 $px->header()
は、次のヘッダーは扱いません。
- HTTPステータスコード : 代わりに
$px->set_status()
を使用してください。$px->header()
にこのヘッダーを渡すと、$px->set_status()
にフォワードされます。 - X-PXFW-ERROR : 代わりに
$px->error()
を使用してください。 - X-PXFW-RELATEDLINK : 代わりに
$px->add_relatedlink()
を使用してください。
Parameters
- $string : string
-
ヘッダー文字列
- $replace : bool = true
-
ヘッダが 前に送信された類似のヘッダを置換するか、または、同じ形式の二番目の ヘッダを追加するかどうかを指定する
Return values
null —値を返しません。
header_list()
送信した (もしくは送信される予定の) レスポンスヘッダの一覧を返す。
public
header_list() : array<string|int, mixed>
$px->header()
から送られたHTTPレスポンスヘッダーの一覧を返します。
このメソッドは CLI SAPI の環境下でも、HTTPレスポンスヘッダーの処理をエミュレートするために用意されました。
従って、実際に送信されたヘッダー情報を管理するものではありません。
Return values
array<string|int, mixed> —ヘッダを、数値添字の配列で返します。
href()
リンク先のパスを生成する。
public
href(string $linkto) : string
引数には、リンク先のパス、またはページIDを受け取り、 完成されたリンク先情報(aタグのhref属性にそのまま適用できる状態)にして返します。
Pickles Framework がドキュメントルート直下にインストールされていない場合、インストールパスを追加した値を返します。
http://
などスキーマから始まる情報を受け取ることもできます。
実装例:
<?php // パスを指定する例 print '<a href="'.htmlspecialchars( $px->href('/aaa/bbb.html') ).'">リンク</a>'; // ページIDを指定する例 print '<a href="'.htmlspecialchars( $px->href('A-00') ).'">リンク</a>'; ?>
インストールパスがドキュメントルートではない場合の例:
<?php // インストールパスが "/installpath/" の場合 print '<a href="'.htmlspecialchars( $px->href('/aaa/bbb.html') ).'">リンク</a>'; // "/installpath/aaa/bbb.html" が返されます。 ?>
Parameters
- $linkto : string
-
リンク先の パス または ページID
Return values
string —href属性値
internal_sub_request()
Pickles 2 内部でサブリクエストを発行し、結果を受け取る
public
internal_sub_request(string $request_path[, array<string|int, mixed> $options = null ][, int &$return_var = null ]) : mixed
Parameters
- $request_path : string
-
リクエストを発行する対象のパス
- $options : array<string|int, mixed> = null
-
Pickles 2 へのコマンド発行時のオプション
- output = 期待する出力形式。
json
を指定すると、サブリクエストに-o json
オプションが加えられ、JSON形式で解析済みのオブジェクトが返されます。 - user_agent =
HTTP_USER_AGENT
文字列。user_agent
が空白の場合、または文字列PicklesCrawler
を含む場合には、パブリッシュツールからのアクセスであるとみなされます。 - method = メソッド名。 指定すると、サブリクエストに
--method
オプションとして加えられます。 - body = リクエストボディ値。 指定すると、サブリクエストに
--body
オプションとして加えられます。 - body_file = リクエストボディが保存されたファイルのパス。 指定すると、サブリクエストに
--body-file
オプションとして加えられます。
- output = 期待する出力形式。
- $return_var : int = null
-
コマンドの終了コードで上書きされます
Return values
mixed —サブリクエストの実行結果。
通常は 得られた標準出力をそのまま文字列として返します。
output
オプションに json
が指定された場合、 json_decode()
された値が返却されます。
サブリクエストから標準エラー出力を検出した場合、 $px->error( $stderr )
に転送します。
is_ignore_path()
除外ファイルか調べる。
public
is_ignore_path(string $path) : bool
Parameters
- $path : string
-
パス
Return values
bool —除外ファイルの場合 true
、それ以外の場合に false
を返します。
is_locked()
アプリケーションロックされているか確認する。
public
is_locked(string $app_name[, int $expire = 60 ]) : bool
Parameters
- $app_name : string
-
アプリケーションロック名
- $expire : int = 60
-
有効時間(秒) (省略時: 60秒)
Return values
bool —ロック中の場合に true
、それ以外の場合に false
を返します。
is_path_enable_sitemap()
サイトマップのロードが有効なパスか調べる。
public
is_path_enable_sitemap([string $path = null ]) : bool
設定値 $conf->paths_enable_sitemap
の配列にもとづいてパスを評価し、
サイトマップをロードするべきかどうかを判定します。
Parameters
- $path : string = null
-
パス
Return values
bool —有効の場合 true, 無効の場合 false.
is_publish_tool()
実行者がパブリッシュツールかどうか調べる。
public
is_publish_tool() : bool
Return values
bool —パブリッシュツールの場合 true
, それ以外の場合 false
を返します。
lang()
言語コードを取得する
public
lang() : string
Return values
string —言語コード
lock()
アプリケーションロックする。
public
lock(string $app_name[, int $expire = 60 ]) : bool
Parameters
- $app_name : string
-
アプリケーションロック名
- $expire : int = 60
-
有効時間(秒) (省略時: 60秒)
Return values
bool —ロック成功時に true
、失敗時に false
を返します。
mk_link()
リンクタグ(aタグ)を生成する。
public
mk_link(string $linkto[, array<string|int, mixed> $options = array() ]) : string
リンク先の パス または ページID を受け取り、aタグを生成して返します。リンク先は、href()
メソッドを通して調整されます。
このメソッドは、受け取ったパス(またはページID)をもとに、サイトマップからページ情報を取得し、aタグを自動補完します。
例えば、パンくず情報をもとに class="current"
を付加したり、ページタイトルをラベルとして採用します。
この動作は、引数 $options
に値を指定して変更することができます。
実装例:
<?php
// ページ /aaa/bbb.html へのリンクを生成
print $px->mk_link('/aaa/bbb.html');
// ページ /aaa/bbb.html へのリンクをオプション付きで生成
print $px->mk_link('/aaa/bbb.html', array(
'label'=>'リンクラベル', //リンクラベルを文字列で指定
'class'=>'class_a class_b', //CSSのクラス名を指定
'no_escape'=>true, //エスケープ処理をキャンセル
'current'=>true //カレント表示にする
));
?>
第2引数に文字列または関数としてリンクラベルを渡す方法もあります。 この場合、その他のオプションは第3引数に渡すことができます。
実装例:
<?php
// ページ /aaa/bbb.html へのリンクをオプション付きで生成
print $px->mk_link('/aaa/bbb.html',
'リンクラベル' , //リンクラベルを文字列で指定
array(
'class'=>'class_a class_b',
'no_escape'=>true,
'current'=>true
)
);
?>
リンクのラベルはコールバック関数でも指定できます。 コールバック関数には、リンク先のページ情報を格納した連想配列が引数として渡されます。
実装例:
<?php //リンクラベルをコールバック関数で指定 print $px->mk_link( '/aaa/bbb.html', function($page_info){return htmlspecialchars($page_info['title_label']);} ); ?>
Parameters
- $linkto : string
-
リンク先のパス。Pickles Framework のインストールパスを基点にした絶対パスで指定。
- $options : array<string|int, mixed> = array()
-
options: [as string] Link label, [as function] callback function, [as array] Any options.
- mixed $options['label']
- リンクのラベルを変更します。文字列か、またはコールバック関数が利用できます。
- bool $options['canonical']
true
またはfalse
を指定します。この値がtrue
の場合、リンク先の生成に `$px->href()` の代わりに `$px->canonical()` が使用されます。 デフォルトはfalse
です。- bool $options['current']
true
またはfalse
を指定します。class="current"
を強制的に付加または削除します。このオプションが指定されない場合は、自動的に選択されます。- bool $options['no_escape']
true
またはfalse
を指定します。この値がfalse
の場合、リンクラベルに含まれるHTML特殊文字が自動的にエスケープされます。デフォルトは、false
、$options['label']
が指定された場合は自動的にtrue
になります。- mixed $options['class']
- スタイルシートの クラス名 を文字列または配列で指定します。
- mixed $options['target']
- target 属性値 を文字列で指定します。 Pickles Framework v2.0.46 で追加されました。
Return values
string —HTMLソース(aタグ)
path_files()
ローカルリソースディレクトリのパスを得る。
public
path_files([string $localpath_resource = null ]) : string
Parameters
- $localpath_resource : string = null
-
ローカルリソースのパス
Return values
string —ローカルリソースの実際の絶対パス
path_files_cache()
ローカルリソースのキャッシュのパスを得る。
public
path_files_cache([string $localpath_resource = null ]) : string
ローカルリソースキャッシュディレクトリは、
$conf->public_cache_dir
の設定により決定されます。
$conf->public_cache_dir
が設定されていない場合に false
を返します。
Parameters
- $localpath_resource : string = null
-
ローカルリソースのパス
Return values
string —ローカルリソースキャッシュのパス
path_plugin_files()
プラグイン別公開キャッシュのパスを得る。
public
path_plugin_files([string $localpath_resource = null ]) : string
プラグイン別公開キャッシュディレクトリは、
$conf->public_cache_dir
の設定により決定されます。
$conf->public_cache_dir
が設定されていない場合に false
を返します。
Parameters
- $localpath_resource : string = null
-
リソースのパス
Return values
string —公開キャッシュのパス
pxcmd()
`$pxcmd` オブジェクトを取得する。
public
pxcmd() : object
Return values
object —$pxcmd オブジェクト
realpath_files()
ローカルリソースディレクトリのサーバー内部パスを得る。
public
realpath_files([string $localpath_resource = null ]) : string
Parameters
- $localpath_resource : string = null
-
ローカルリソースのパス
Return values
string —ローカルリソースのサーバー内部パス
realpath_files_cache()
ローカルリソースのキャッシュディレクトリのサーバー内部パスを得る。
public
realpath_files_cache([string $localpath_resource = null ]) : string
ローカルリソースキャッシュディレクトリは、
$conf->public_cache_dir
の設定により決定されます。
$conf->public_cache_dir
が設定されていない場合に false
を返します。
Parameters
- $localpath_resource : string = null
-
ローカルリソースのパス
Return values
string —ローカルリソースキャッシュのサーバー内部パス
realpath_files_private_cache()
コンテンツ別の非公開キャッシュディレクトリのサーバー内部パスを得る。
public
realpath_files_private_cache([string $localpath_resource = null ]) : string
Parameters
- $localpath_resource : string = null
-
ローカルリソースのパス
Return values
string —コンテンツ別の非公開キャッシュのサーバー内部パス
realpath_plugin_files()
プラグイン別公開キャッシュのサーバー内部パスを得る。
public
realpath_plugin_files([string $localpath_resource = null ]) : string
プラグイン別公開キャッシュディレクトリは、
$conf->public_cache_dir
の設定により決定されます。
$conf->public_cache_dir
が設定されていない場合に false
を返します。
Parameters
- $localpath_resource : string = null
-
リソースのパス
Return values
string —プライベートキャッシュのサーバー内部パス
realpath_plugin_private_cache()
プラグイン別プライベートキャッシュのサーバー内部パスを得る。
public
realpath_plugin_private_cache([string $localpath_resource = null ]) : string
Parameters
- $localpath_resource : string = null
-
リソースのパス
Return values
string —プライベートキャッシュのサーバー内部パス
req()
`$req` オブジェクトを取得する。
public
req() : object
$req
(class tomk79\request)のインスタンスを返します。
Tags
Return values
object —$req オブジェクト
set_lang()
言語コードを設定する
public
set_lang(string $new_lang) : bool
Parameters
- $new_lang : string
-
言語コード
Return values
bool —成功時 true
、 失敗時 false
set_site()
`$site` オブジェクトをセットする
public
set_site(object $site) : bool
外部から $site
(class picklesFramework2\site)のインスタンスを受け取ります。
このメソッドを通じて、プラグインから $site
の振る舞いを変更することができます。
Parameters
- $site : object
-
$site
オブジェクト
Return values
bool —成功時 true
、失敗時 false
を返します。
set_status()
response status code をセットする
public
set_status(int $code[, string $message = null ]) : bool
Parameters
- $code : int
-
ステータスコード (100〜599の間の数値)
- $message : string = null
-
ステータスメッセージ
Return values
bool —成功時 true
, 失敗時 false
site()
`$site` オブジェクトを取得する。
public
site() : object|bool
$site
(class picklesFramework2\site)のインスタンスを返します。
$site
は、主にサイトマップCSVから読み込んだページの一覧情報を管理するオブジェクトです。
$conf->paths_enable_sitemap
の設定によって、 $site
がロードされない場合があります。
ロードされない場合は、 false
が返されます。
また、サイトマップをロードする前段階(before_sitemap
) では、 null
を返します。
Return values
object|bool —$site
オブジェクト。ロード前は null
、ロードされない場合は false
。
touch_lockfile()
アプリケーションロックファイルの更新日を更新する。
public
touch_lockfile(string $app_name) : bool
Parameters
- $app_name : string
-
アプリケーションロック名
Return values
bool —成功時に true
、失敗時に false
を返します。
unlock()
アプリケーションロックを解除する。
public
unlock(string $app_name) : bool
Parameters
- $app_name : string
-
アプリケーションロック名
Return values
bool —ロック解除成功時に true
、失敗時に false
を返します。
assemble_path_content_and_proc_type()
$path_content を計算する
private
assemble_path_content_and_proc_type() : array<string|int, mixed>
Return values
array<string|int, mixed> —$path_content, $proc_type
exec_content()
コンテンツを実行する。
private
static exec_content(object $px) : bool
Parameters
- $px : object
-
picklesオブジェクト
Return values
bool —true
fnc_call_plugin_funcs()
call plugin functions
private
fnc_call_plugin_funcs(mixed $func_list) : bool
Parameters
- $func_list : mixed
-
List of plugins function
Return values
bool —成功時 true
、失敗時 false
get_default_mime_type()
デフォルトの MIME Type を取得する。
private
get_default_mime_type([string $path = null ]) : string
Parameters
- $path : string = null
-
パス
Return values
string —MIME Type