iwato Posted May 9, 2018 Share Posted May 9, 2018 BACKGROUND: I cannot find anything wrong with this function, but when I try to run it, PHP tells me that it is undefined. Thus, I suspect that the problem has to do with my version number. Where before I was running with 5.6, I am now running with 5.3. CODE function xmlobj_to_array($obj) { $namespace = $obj->getDocNamespaces(true); $namespace[NULL] = NULL; $children = array(); $attributes = array(); $name = strtolower((string)$obj->getName()); $text = trim((string)$obj); if( strlen($text) <= 0 ) { $text = NULL; } if(is_object($obj)) { foreach( $namespace as $ns=>$nsUrl ) { $objAttributes = $obj->attributes($ns, true); foreach( $objAttributes as $attributeName => $attributeValue ) { $attribName = strtolower(trim((string)$attributeName)); $attribVal = trim((string)$attributeValue); if (!empty($ns)) { $attribName = $ns . ':' . $attribName; } $attributes[$attribName] = $attribVal; } $objChildren = $obj->children($ns, true); foreach( $objChildren as $childName=>$child ) { $childName = strtolower((string)$childName); if( !empty($ns) ) { $childName = $ns.':'.$childName; } $children[$childName][] = xmlObjToArr($child); } } } return array( 'name'=>$name, 'text'=>$text, 'attributes'=>$attributes, 'children'=>$children ); } QUESTION: Please test the function and let me know whether it is my code or my version number. If it is the code, please suggest the appropriate changes. Roddy Link to comment Share on other sites More sharing options...
iwato Posted May 9, 2018 Author Share Posted May 9, 2018 Never mind, I found the error. I had changed the name of the function, but because it is recursive, I needed to change the name of the function within the function as well. Hoorray! Hooray! Roddy Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now