我将cakephp 3.2更改为新服务器,此服务器运行的是php 7而不是5.4。现在我的调用组件和所需操作的交互方式存在问题。我使用的是以下内容:
$data[$csvKnowField->field_number] = $this->Replace->$csvKnowField['imports_mapping']['component_action']($data[$csvKnowField->field_number]);
这是错误:函数名必须是字符串。据我所知,问题来自于调用的操作,因为如果我将其更改为:
$data[$csvKnowField->field_number] = $this->Replace->replaceComma($data[$csvKnowField->field_number]);
一切正常。变量$ csvKnowField ['imports_mapping'] ['component_action']持有一个交互值,因此可以在Replace组件中调用不同的动作,因此保持这种方式会很棒。
是否有人如何知道解决方案,以便变量中的值可以用作交互方式?