# how to find the elements to get it separate

## Recommended Posts

I need some help with my PHP, I'm working on my PHP to parsing the contents from the elements.

I have the ids of `<span id="time1">` and `<span id="title1">` for the elements. I'm trying to parse the `time1`, `time2`, `time3`, `time4`, `time5`, `time6`, `time7`, `time8`, `time9` and `title1`, `title2`, `title3`, `title4`, `title5`, `title6`, `title7`, `title8`, `title9` elements which I'm using `span` as the id.

I will get the input of the `time1`, `time2`, `time3`, `time4`, `time5`, `time6`, `time7`, `time8`, `time9` and `title1`, `title2`, `title3`, `title4`, `title5`, `title6`, `title7`, `title8`, `title9` together which I want to get the list of `time1` to `time9` and `title1` to `title9` in separate.

Here is the input:

```
7:00 PMMelissa & Joey - Born to Run7:30 PMMelissa & Joey - More Than Roommates8:00 PMMelissa & Joey - Accidents Will Happen8:30 PMBaby Daddy - From Here to Paternity9:00 PM```

Here is the output of get-listing:

```
<span id="time1">7:00 PM</span> - <span id="title1">Melissa & Joey -  Born to Run</span><br></br>
<span id="time2">7:30 PM</span> - <span id="title2">Melissa & Joey -  More Than Roommates</span><br></br>
<span id="time3">8:00 PM</span> - <span id="title3">Melissa & Joey -  Accidents Will Happen</span><br></br>
<span id="time4">8:30 PM</span> - <span id="title4">Baby Daddy -  From Here to Paternity</span><br></br>
<span id="time5">9:00 PM</span>```

Here is the code:

```
<?php
ini_set('max_execution_time', 300);
\$errmsg_arr = array();
\$errflag = false;

\$xml .= '<?xml version="1.0" encoding="UTF-8" ?>';
\$xml .= '
<tv generator-info-name="www.mysite.com/xmltv">';

\$baseUrl = file_get_contents('http://www.mysite.com/get-listing.php');

\$domdoc = new DOMDocument();
\$domdoc->strictErrorChecking = false;
\$domdoc->recover=true;

\$data = array();
{
{
{
\$url = str_replace(" ", "%20", \$link->getAttribute('href'));
//echo \$url;
//echo "<br>";
\$sdoc = new DOMDocument();
\$sdoc->strictErrorChecking = false;
\$sdoc->recover=true;
\$spans = \$sdoc->getElementsByTagName('span');
\$query = parse_url(\$url)['query'];
\$channel_split = explode("&", \$query)[0];
\$channel = urldecode(explode("=",\$channel_split)[1]);
\$id_split = explode("&", \$query)[1];
\$my_id = urldecode(explode("=",\$id_split)[1]);
//echo \$my_id;
//echo '<channel id='.\$my_id.'>';
//echo \$spans->nodeValue;

\$flag=0;
foreach(\$spans as \$span)
{
echo \$span->nodeValue;
\$starttime=\$span->nodeValue;
//echo "<programme channel='".\$my_id." ".\$channel." start='".\$starttime."' stop='".\$stoptime."'>";

if(\$flag>0)
{
//echo "<programme channel='".\$my_id." ".\$channel." start='".\$starttime."' stop='".\$stoptime."'>";
\$stoptime=\$starttime;
\$flag=1;
}
else
{
\$stoptime=\$starttime;
}
}
}
}
}
?>```

Can you please tell me how I can create the arrays for the domdocument to get the element id of `time1` to `time9` to make it separate with `title1` to `title9`?

##### Share on other sites

Is that really your input with the times blending in with the titles?

Anyway, in a loop you can create a new array and even associate items within that array

```\$new_array[] = array("id"=>\$my_id, "channel"=>\$channel, "start"=>\$starttime, "stop"=>\$stoptime);
```

Outside the loop can do whatever need with it.

var_dump(\$new_array);

#### Archived

This topic is now archived and is closed to further replies.

×

• #### Activity

• Chat
×
• Create New...