0

オブジェクトが定義されていないときに呼び出される関数を定義することは可能ですか?したがって$makeUpOntheFlyObjectNames->something();、関数でオブジェクト名、関数名、およびその引数の配列を取得するか、空の配列がない場合は空の配列を取得できます。それが何を呼ぼうとしていたのか?$varName->length();文字列などのためにV5.xで動作するようなものを作るというアイデアがありました。これをグーグルしようとしていたが、のようなclass_existsものを取り戻していたので、人間がより良い答えを持っていると考えた。しかし、それは不可能だと思います。確認のためにここをチェックしたかっただけです。

したがって、オブジェクトが見つからず、lengthを呼び出していた場合は、それが文字列であるかどうかを確認してから、strlenの結果を返します。そうでない場合は、文字列ではない場合は、php自体のエラーをエミュレートします。検出の最初の部分も可能です。

4

1 に答える 1

0

You can try the following:

$objName = 'test';
//check if the object exists
if(isset($$objName)){
//object exists...
}
else{
//do what you want here
}

try to run it "as is" or add a line before this code, for example:

$test = array(1=>'a',2=>'b');
$objName = 'test';
...

and see how you "fall" into the "if" instead of the "else"

于 2013-01-27T08:05:30.557 に答える