PHP【演算子 << 】Unsupported operand types


PHP 5.2 です。

$priority = array(1);
var_dump(((1 << ($priority + 1)) - 1));

=> Fatal error: Unsupported operand types 発生します。

どうすれば回避可能なのでしょうか?

* 外部ライブラリなのでコードは変更できません。
* 何かの設定が足りないか、バージョンが問題ではないかと推測しております。

よろしくお願いいたします。

回答の条件
  • 1人2回まで
  • 登録:2009/11/12 19:22:41
  • 終了:2009/11/12 20:01:45

ベストアンサー

id:GoldenDawn No.1

GoldenDawn回答回数426ベストアンサー獲得回数812009/11/12 19:43:40

ポイント60pt

やりたいことがよく分からないのでどう直すべきなのか、はっきり言うことはできませんが、

エラーは << 演算子ではなく

$priority + 1

この加算で起こっています。

とりあえず動くようにするなら

$priority = array(1);
var_dump(((1 << ($priority[0] + 1)) - 1));

とかでしょうか。

id:nannde

ありがとうございます。

おっしゃるとおりのようです。

Log::factory('file', 'name', 'id', array(), null); // PEAR::Log

で発生しました。

引数の間違いかもしれません。見直します。

2009/11/12 19:47:52

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません