Php > Arrays
Parsing html tags with php. Get an array from this function
Parsing html tags with php. Get an array from this function
, etc * - At the end, the array will look like this: * ["IMG"][0]["SRC"] = "xxx" * ["IMG"][1]["SRC"] = "xxx" * ["IMG"][1]["ALT"] = "xxx" * ["A"][0]["HREF"] = "xxx" * */ function parseHtml( $s_str ) { $i_indicatorL = 0; $i_indicatorR = 0; $s_tagOption = ""; $i_arrayCounter = 0; $a_html = array(); // Search for a tag in string while( is_int(($i_indicatorL=strpos($s_str,"<",$i_indicatorR))) ) { // Get everything into tag... $i_indicatorL++; $i_indicatorR = strpos($s_str,">", $i_indicatorL); $s_temp = substr($s_str, $i_indicatorL, ($i_indicatorR-$i_indicatorL) ); $a_tag = explode( ' ', $s_temp ); // Here we get the tag's name list( ,$s_tagName,, ) = each($a_tag); $s_tagName = strtoupper($s_tagName); // Well, I am not interesting in
, or anything else like that... // So, this is false for tags without options. $b_boolOptions = is_array(($s_tagOption=each($a_tag))) && $s_tagOption[1]; if( $b_boolOptions ) { // Without this, we will mess up the array $i_arrayCounter = (int)count($a_html[$s_tagName]); // get the tag options, like src="htt://". Here, s_tagTokOption is 'src' and s_tagTokValue is '"http://"' do { $s_tagTokOption = strtoupper(strtok($s_tagOption[1], "=")); $s_tagTokValue = trim(strtok("=")); $a_html[$s_tagName][$i_arrayCounter][$s_tagTokOption] = $s_tagTokValue; $b_boolOptions = is_array(($s_tagOption=each($a_tag))) && $s_tagOption[1]; } while( $b_boolOptions ); } } return $a_html; } ?>
Php Codes
Algorithms
Arrays
Authentication
Calendar
Code Snippets
Programs
Content Manage
Contest Related
Cookies
Credit Cards
DBase Related
Databases
Date Time
Directories
E-Mail
Errors
File
File System
Forms
Handling
Graphics
HTML and PHP
Informix
Ingres
InterBase
LDAP
Look and Feel
Miscellaneous
MySQL
Other
PHP Classes
Searching
Navigation
Statistics
Strings
User Manage