PHP Xml_get_current_line_number () function

PHP

Syntax:
int xml_get_current_line_number (resource $xml_parser)
Parameters:This function takes one required parameter, $xml_parser . It defines the XML parser to be used.Return Value:This function returns the current line number for the specified parser it is currently running on on success, or False on error.Notes :
  • This function is available for PHP 4.0.0 and above.
  • These the examples may not work in the online IDE. So, try running it on your local server or on the php hosts.
gfg.xml file: xml version = "1.0" encoding = " utf-8 " ?> < user > < username > user123 < / username > < name > firstname lastname < / name > < phone > + 91-9876543210 < / phone > < detail > I am John Doe. Live in Kolkata, India. < / detail > < / users >  
// XML file containing inconsistency tags $xml_file = 'gfg.xml' ;  
// Initialize the XML parser $xml_parser = xml_parser_create();  
// Open file in read mode $file_pointer = fopen ( $xml_file , ' r' );  
// Read data from the file stream while ( $xml_data = fread ( $file_pointer , 4096)) { // Parse the data block if (! xml_parse ( $xml_parser , $xml_data , feof ( $file_pointer ))) { // Display errors die ( print "ERROR:" . // Error string xml_error_string (xml_get_error_code ( $xml_parser )). " < br / > Error Code: " . // Error code xml_get_error_code ( $xml_parser ). " < br / > Line: " . // Line number where the error occurred xml_get_current_line_number ( $xml_parser ). " < br / > Column: " . // Number of the column where the error occurred xml_get_current_column_number ( $xml_parser ). " < br / > Byte Index: " . // Byte index where the current byte occurred xml_get_current_byte_index ( $xml_parser ). "< br / >" ); } }  
// Free XML parser xml_parser_free ( $xml_parser );  
?>
Output:
ERROR: Mismatched tag Error Code: 76 Line: 7 Column: 13 Byte Index: 208
engineer.xml file: xml version = "1.0 encoding =" utf-8 "?> < user > < username > user123 < / username > < name > firstname las tname < / name > < phone > + 91-9876543210 < / phone > < detail > I am John Doe. Live in Kolkata, India. < / detail > < / user > Program 2:  
// XML file containing mismatch tags $xml_file = 'engineer.xml' ;  
// Initialize the XML parser $xml_parser = xml_parser_create();  
// Open file in read mode $file_pointer = fopen ( $xml_file , ' r' );  
// Read data from the file stream while ( $xml_data = fread ( $file_pointer , 4096)) { // Parse the data block if (! xml_parse ( $xml_parser , $xml_data , feof ( $file_pointer ))) { // Display errors die ( print "ERROR:" . // Error string xml_error_string (xml_get_error_code ( $xml_parser )). " < br / > Error Code: " . // Error code xml_get_error_code ( $xml_parser ). " < br / > Line: " . // Line number where the error occurred xml_get_current_line_number ( $xml_parser ). " < br / > Column: " . // Number of the column where the error occurred xml_get_current_column_number ( $xml_parser ). " < br / > Byte Index: " . // Byte index where the current byte occurred xml_get_current_byte_index ( $xml_parser ). "< br / >" ); } }  
// Free XML parser xml_parser_free ( $xml_parser );  
?>
Output:
ERROR: String not closed expecting "or' Error Code: 34 Line: 1 Column: 36 Byte Index: 37
Link: https://www.php.net/manual/en/function.xml-get -current-line-number.php



Get Solution for free from DataCamp guru