Как проверить, получен или определен аргумент?

У меня есть функция, которая имеет эти аргументы:

 <cffunction name="Agregar" access="public" returntype="any">
        <cfargument name="id_examen" type="numeric" required="yes" />
        <cfargument name="id_tema" type="numeric" required="yes" />
        <cfargument name="id_tipopregunta" type="numeric" required="yes" />
        <cfargument name="id_dificultad" type="numeric" required="yes" />
        <cfargument name="opciones_arreglo" type="array" required="no" />

Я пытаюсь использовать cfif, чтобы сказать, что делать, когда аргумент "opciones_arreglo" не получен. Я использовал функцию под названием isDefined, но это не работает. Я просто хочу, чтобы код запускал секцию else, но я получил эту жалобу о чем-то очевидном:

Element OPCIONES_ARREGLO is undefined in ARGUMENTS.


The error occurred in C:\www\htdocs\RHRR\componentes\bro\preguntas.cfc: line 24
22 :         <cfdump var="#Arguments#">
23 :         
24 :        **<cfif IsDefined(Arguments.opciones_arreglo)>**
25 :            
26 :             <cfinvoke method         = "RSAgregar"

2 ответа

Проблема заключалась в кавычках. Ошибка новичка:(

<cfif IsDefined("Arguments.opciones_arreglo")>

Вы можете добавить значение по умолчанию, и оно всегда будет существовать

<cfargument name="opciones_arreglo" type="array" required="no" default="#ArrayNew(1)#" />
Другие вопросы по тегам