0

ステートメントが false を返す場合、例外をスローする必要があり、それを行うための単純で簡潔な方法を考え出そうとしています。何か案は?やりたかったのは以下の...

<?
  // ...
  oci_execute( $stmt ) or throw new OracleException( $stmt );
  // ...
?>

...しかし、「スロー」は言語構造であるため、PHP インタープリターはそれを許可しません (構文エラー)。

何か案は?非常に短いワンライナーを希望します (if ステートメントは使用しないでください)

4

3 に答える 3

3
<?
  // ...
  if (!oci_execute( $stmt )) throw new OracleException( $stmt );
  // ...
?>

私の頭に浮かぶすべてです。しかし、私はそれほど長く PHP を使用していません。今、私は素晴らしいことである Perl を発見しました。あなたが提案した構造やその他多くのものを使用できます。常に試してみる価値があります!

于 2010-12-07T14:54:12.007 に答える
0

できません。しかし、私はあなたが説明している特定の必要性を実際に持ったことはありません. または、少なくとも慣用的ではありません。手続き型関数 ( oci_execute) の存在がそれをサポートしているようです。

PHPから Oracle を使用した経験はありませんが、代わりにpdo-bindingsを使用できますか? これにより、よりオブジェクト指向のインターフェイスを使用できるようになります。

于 2010-12-07T14:53:04.327 に答える
0

だろう

if !oci_execute($stmt) { throw new OracleException($stmt); }

仕事?

于 2010-12-07T14:55:21.333 に答える