[PHP-DEV] Bug #10994 Updated: DOMXML CDATA Node Bug

2001-12-01 Thread mfischer

ID: 10994
Updated by: mfischer
Reported By: [EMAIL PROTECTED]
Old Status: Assigned
Status: Closed
Bug Type: DOM XML related
Operating System: Winnt
PHP Version: 4.0.5
Assigned To: mfischer
New Comment:

Should be fixed in CVS. Closing.

Previous Comments:


[2001-11-30 21:00:47] [EMAIL PROTECTED]

Update: Fix is coming, assigned to me.

Btw, the syntax has changed since then, you'll have to use:

  print_r($arr[2]-children());

to see your CDATA node then.




[2001-11-22 03:36:00] [EMAIL PROTECTED]

Can you try with latest RC and see if it works

http://www.php.net/~zeev/php-4.1.0RC3.tar.gz

Feedback.




[2001-05-21 13:49:12] [EMAIL PROTECTED]

Hello Dear PHP Support.
I have compatability problem with PHP 4.04 - PHP 4.05, exactly in DOMXML (i mean) 
module.

This is piece of my code:

-

?

function XML_Def_Parse($xml_file) {

  $doc = xmldoc(join(, file($xml_file)) );  
  $ctx = xpath_new_context($doc );  

  //


  $doc_vars = xml_parse_vars($ctx, //DOC/VAR);

  $obj = xpath_eval($ctx, //DOC/BLOCKS/BLOCK);
  $arr = $obj-nodeset;

  
for($block_n=1; $block_nsizeof($arr)+1; ++$block_n) {

$block_vars = xml_parse_vars($ctx, 
//DOC/BLOCKS/BLOCK[$block_n]/VAR);


  


$obj2 = xpath_eval($ctx, //DOC/BLOCKS/BLOCK[$block_n]/BLOCKSET);
$arr2 = $obj2-nodeset; 


for($blockset_n=1; $blockset_nsizeof($arr2)+1; ++$blockset_n) 
{

$myobj = xpath_eval($ctx, 
//DOC/BLOCKS/BLOCK[$block_n]/BLOCKSET[$blockset_n]);
$myarr = $myobj-nodeset;

$blockset_type = $myarr[0]-getattr(type);

//  

$obj3 = xpath_eval($ctx, 
//DOC/BLOCKS/BLOCK[$block_n]/BLOCKSET[$blockset_n]/BLOCKSETELEMENT);
$arr3 = $obj3-nodeset; 

$blocksetelements = array();

for($blocksetelement_n=1; 
$blocksetelement_nsizeof($arr3)+1; ++$blocksetelement_n) {
   
 
$blocksetelement_vars = 
xml_parse_vars($ctx, 
//DOC/BLOCKS/BLOCK[$block_n]/BLOCKSET[$blockset_n]/BLOCKSETELEMENT[$blocksetelement_n]/VAR);


$blocksetelements[] = 
$blocksetelement_vars;

}


//$blocksets[$blockset_type] = 
array(array(sa=as),array(s2=a2));

$blocksets[$blockset_type] = $blocksetelements;

}




$blocks[] = array_merge($block_vars, $blocksets);

}   



$blocks_arr = array(BLOCKS=$blocks);
$doc_v = array_merge($doc_vars, $blocks_arr);

}




function xml_parse_vars($ctx,$path) {

  $obj = xpath_eval($ctx, $path);
  $arr = $obj-nodeset;

  if($path == //DOC/BLOCKS/BLOCK[1]/BLOCKSET[2]/BLOCKSETELEMENT[1]/VAR) {
  print_r($arr);
  }
  
for($x=0; $xsizeof($arr); ++$x) {

$name  = $arr[$x]-getattr(name);
$value = $arr[$x]-content;
  
$results[$name] = $value;

}

  return $results;

 } //function


XML_Def_Parse(kulichki.xml);

?

---

This is kulichki.xml:

--


?xml version=1.0?

DOC version=1.0 

[PHP-DEV] Bug #10994 Updated: DOMXML CDATA Node Bug

2001-11-30 Thread mfischer

ID: 10994
Updated by: mfischer
Reported By: [EMAIL PROTECTED]
Old Status: Feedback
Status: Assigned
Bug Type: DOM XML related
Operating System: Winnt
PHP Version: 4.0.5
Old Assigned To: 
Assigned To: mfischer
New Comment:

Update: Fix is coming, assigned to me.

Btw, the syntax has changed since then, you'll have to use:

  print_r($arr[2]-children());

to see your CDATA node then.


Previous Comments:


[2001-11-22 03:36:00] [EMAIL PROTECTED]

Can you try with latest RC and see if it works

http://www.php.net/~zeev/php-4.1.0RC3.tar.gz

Feedback.




[2001-05-21 13:49:12] [EMAIL PROTECTED]

Hello Dear PHP Support.
I have compatability problem with PHP 4.04 - PHP 4.05, exactly in DOMXML (i mean) 
module.

This is piece of my code:

-

?

function XML_Def_Parse($xml_file) {

  $doc = xmldoc(join(, file($xml_file)) );  
  $ctx = xpath_new_context($doc );  

  //


  $doc_vars = xml_parse_vars($ctx, //DOC/VAR);

  $obj = xpath_eval($ctx, //DOC/BLOCKS/BLOCK);
  $arr = $obj-nodeset;

  
for($block_n=1; $block_nsizeof($arr)+1; ++$block_n) {

$block_vars = xml_parse_vars($ctx, 
//DOC/BLOCKS/BLOCK[$block_n]/VAR);


  


$obj2 = xpath_eval($ctx, //DOC/BLOCKS/BLOCK[$block_n]/BLOCKSET);
$arr2 = $obj2-nodeset; 


for($blockset_n=1; $blockset_nsizeof($arr2)+1; ++$blockset_n) 
{

$myobj = xpath_eval($ctx, 
//DOC/BLOCKS/BLOCK[$block_n]/BLOCKSET[$blockset_n]);
$myarr = $myobj-nodeset;

$blockset_type = $myarr[0]-getattr(type);

//  

$obj3 = xpath_eval($ctx, 
//DOC/BLOCKS/BLOCK[$block_n]/BLOCKSET[$blockset_n]/BLOCKSETELEMENT);
$arr3 = $obj3-nodeset; 

$blocksetelements = array();

for($blocksetelement_n=1; 
$blocksetelement_nsizeof($arr3)+1; ++$blocksetelement_n) {
   
 
$blocksetelement_vars = 
xml_parse_vars($ctx, 
//DOC/BLOCKS/BLOCK[$block_n]/BLOCKSET[$blockset_n]/BLOCKSETELEMENT[$blocksetelement_n]/VAR);


$blocksetelements[] = 
$blocksetelement_vars;

}


//$blocksets[$blockset_type] = 
array(array(sa=as),array(s2=a2));

$blocksets[$blockset_type] = $blocksetelements;

}




$blocks[] = array_merge($block_vars, $blocksets);

}   



$blocks_arr = array(BLOCKS=$blocks);
$doc_v = array_merge($doc_vars, $blocks_arr);

}




function xml_parse_vars($ctx,$path) {

  $obj = xpath_eval($ctx, $path);
  $arr = $obj-nodeset;

  if($path == //DOC/BLOCKS/BLOCK[1]/BLOCKSET[2]/BLOCKSETELEMENT[1]/VAR) {
  print_r($arr);
  }
  
for($x=0; $xsizeof($arr); ++$x) {

$name  = $arr[$x]-getattr(name);
$value = $arr[$x]-content;
  
$results[$name] = $value;

}

  return $results;

 } //function


XML_Def_Parse(kulichki.xml);

?

---

This is kulichki.xml:

--


?xml version=1.0?

DOC version=1.0 copyright=(c) Denis Torbichuk, 2000

VAR name=DOC_CODEKULICHKI.TV/VAR
VAR name=DOC_DESCÏðîãðàììà 

[PHP-DEV] Bug #10994 Updated: DOMXML CDATA Node Bug

2001-11-22 Thread mfischer

ID: 10994
Updated by: mfischer
Reported By: [EMAIL PROTECTED]
Old Status: Open
Status: Feedback
Bug Type: DOM XML related
Operating System: Winnt
PHP Version: 4.0.5
New Comment:

Can you try with latest RC and see if it works

http://www.php.net/~zeev/php-4.1.0RC3.tar.gz

Feedback.


Previous Comments:


[2001-05-21 13:49:12] [EMAIL PROTECTED]

Hello Dear PHP Support.
I have compatability problem with PHP 4.04 - PHP 4.05, exactly in DOMXML (i mean) 
module.

This is piece of my code:

-

?

function XML_Def_Parse($xml_file) {

  $doc = xmldoc(join(, file($xml_file)) );  
  $ctx = xpath_new_context($doc );  

  //


  $doc_vars = xml_parse_vars($ctx, //DOC/VAR);

  $obj = xpath_eval($ctx, //DOC/BLOCKS/BLOCK);
  $arr = $obj-nodeset;

  
for($block_n=1; $block_nsizeof($arr)+1; ++$block_n) {

$block_vars = xml_parse_vars($ctx, 
//DOC/BLOCKS/BLOCK[$block_n]/VAR);


  


$obj2 = xpath_eval($ctx, //DOC/BLOCKS/BLOCK[$block_n]/BLOCKSET);
$arr2 = $obj2-nodeset; 


for($blockset_n=1; $blockset_nsizeof($arr2)+1; ++$blockset_n) 
{

$myobj = xpath_eval($ctx, 
//DOC/BLOCKS/BLOCK[$block_n]/BLOCKSET[$blockset_n]);
$myarr = $myobj-nodeset;

$blockset_type = $myarr[0]-getattr(type);

//  

$obj3 = xpath_eval($ctx, 
//DOC/BLOCKS/BLOCK[$block_n]/BLOCKSET[$blockset_n]/BLOCKSETELEMENT);
$arr3 = $obj3-nodeset; 

$blocksetelements = array();

for($blocksetelement_n=1; 
$blocksetelement_nsizeof($arr3)+1; ++$blocksetelement_n) {
   
 
$blocksetelement_vars = 
xml_parse_vars($ctx, 
//DOC/BLOCKS/BLOCK[$block_n]/BLOCKSET[$blockset_n]/BLOCKSETELEMENT[$blocksetelement_n]/VAR);


$blocksetelements[] = 
$blocksetelement_vars;

}


//$blocksets[$blockset_type] = 
array(array(sa=as),array(s2=a2));

$blocksets[$blockset_type] = $blocksetelements;

}




$blocks[] = array_merge($block_vars, $blocksets);

}   



$blocks_arr = array(BLOCKS=$blocks);
$doc_v = array_merge($doc_vars, $blocks_arr);

}




function xml_parse_vars($ctx,$path) {

  $obj = xpath_eval($ctx, $path);
  $arr = $obj-nodeset;

  if($path == //DOC/BLOCKS/BLOCK[1]/BLOCKSET[2]/BLOCKSETELEMENT[1]/VAR) {
  print_r($arr);
  }
  
for($x=0; $xsizeof($arr); ++$x) {

$name  = $arr[$x]-getattr(name);
$value = $arr[$x]-content;
  
$results[$name] = $value;

}

  return $results;

 } //function


XML_Def_Parse(kulichki.xml);

?

---

This is kulichki.xml:

--


?xml version=1.0?

DOC version=1.0 copyright=(c) Denis Torbichuk, 2000

VAR name=DOC_CODEKULICHKI.TV/VAR
VAR name=DOC_DESCÏðîãðàììà òåëåïåðåäà÷ íà Kulichki/VAR
VAR name=DOC_URLtv6.htm/VAR


BLOCKS

  BLOCK number=1

VAR name=BLOCK_DESCÎáùèé áëîê/VAR
VAR name=BLOCK_BEGIN/VAR
VAR name=BLOCK_END/VAR