Naify\Psr\Message\MessageTrait トレイト
PSR-7 MessageInterface 共通実装トレイト
Response / ServerRequest が共有するヘッダー・ボディ・プロトコルバージョン操作を 一箇所にまとめ、重複実装を排除する。
使用例
class MyMessage implements MessageInterface {
use MessageTrait;
}
プロパティ
| 名前 | 型 | 説明 |
|---|---|---|
private
$headers
|
array |
ヘッダー(オリジナルケース) |
private
$headerNames
|
array |
小文字ヘッダー名 → オリジナルケースのマップ |
private
$body
|
StreamInterface |
メッセージボディ |
private
$protocolVersion
|
string |
HTTP プロトコルバージョン |
メソッド
| メソッド | 説明 |
|---|---|
private
setHeaders(array $headers): void
|
ヘッダー配列を正規化して格納する(コンストラクタ用) |
public
getProtocolVersion(): string
|
現在の HTTP プロトコルバージョンを返す |
public
withProtocolVersion(string $version): static
|
プロトコルバージョンを変更した新しいインスタンスを返す 8.5 → clone with |
public
getHeaders(): array
|
保持しているヘッダーをすべて返す |
public
hasHeader(string $name): bool
|
指定したヘッダーの存在を判定する |
public
getHeader(string $name): array
|
指定したヘッダーの値一覧を返す |
public
getHeaderLine(string $name): string
|
指定したヘッダーを 1 行文字列にして返す |
public
withHeader(string $name, array|string $value): static
|
ヘッダーを設定する(既存の同名ヘッダーを置換) 8.5 → clone with |
public
withAddedHeader(string $name, array|string $value): static
|
ヘッダーを追加する(既存の同名ヘッダーに値を追加) 8.5 → clone with |
public
withoutHeader(string $name): static
|
ヘッダーを削除する 8.5 → clone with |
public
getBody(): StreamInterface
|
メッセージボディのストリームを返す |
public
withBody(StreamInterface $body): static
|
メッセージボディを変更した新しいインスタンスを返す 8.5 → clone with |