サイト Web の新規開発において、非常に奇妙なケースがあります。(カスタム モジュールを使用して) ブロックを作成し、node_load を作成しました。これですべて問題ありません。ノードはロードされ、ブロックは表示されます。しかし、ノードの nid を変更し (例: set null)、他に何もしない場合 (node_save、関数呼び出し、このオブジェクトで何もしない)、別のモジュール (3 つまたは 4 つのモジュールなど) の通知があります。私はそれが単なる通知であることを知っていますが、決して使用されない変更変数の単純な事実がエラーを引き起こす理由を理解するでしょう.....例:
$tmp = node_load(arg(1));
$tmp->nid=null;
=> エラー (別の名前の関数で「... で非オブジェクトのプロパティを取得しようとしています」の多く)
$tmp = node_load(arg(1));
$node=$tmp;
$node->nid=null;
=> エラー (別の名前の関数で「... で非オブジェクトのプロパティを取得しようとしています」の多く)
$tmp = node_load(arg(1));
$node = new stdClass();
//Copy via une boucle sinon on a des erreurs.
foreach ($tmp as $key => $value) {
if ($key != 'nid') $node->{$key} = $value;
}
=> 大丈夫です