I am trying to pull the image src from an XML-based Atom Feed using PHP. I want to do this by slicing the string in the feed so that only the URL is grabbed.
So far I have been able to use the substr()
command to slice a specific string length. The issue is the length of the image URLs will often vary in the feed, so I need to slice based on a specific character.
I tried using explode to specify a character to slice at:
foreach ($array['entry'] as $post) {
if ($current > $max) break;
$posts[] = [
'post_img' => explode("\"", $post['content'], 2),
...but that didn't work. Here’s the XML code I am trying to pull from:
<content type="html"><img alt="" class="attachment image image" src="http://awpagesociety.com/attachments/20aa91b841d6a49dd945a97af37509add2680573/store/limit/452/300/e6941ac426f6cbca5774cad6f2e8b6447c96d92d32957be6709dac201de7/Brady-Bush.jpg"
And here is the method in full. The url
, post_content
and post_title
fields are all assigning correctly:
$feed = getRssFile();
if ($feed == false) return;
$xml = simplexml_load_file($feed);
$json = json_encode($xml);
$array = json_decode($json,TRUE);
$posts = [];
if (count($array['entry'])) {
$max = 3;
$current = 1;
foreach ($array['entry'] as $post) {
if ($current > $max) break;
$posts[] = [
'post_img' => explode("src=", $post['content'], //isn't working
'post_title' => $post['title'],
'post_content' => substr(sanitizeContent($post['content']), 0, 200),
'url' => $post['link']['@attributes']['href']
];
$current++;
}
}
return $posts;
}
explode() doesn't assign anything to the src field of the image when I check in the element inspector. It just says img src(unknown)
Are there any alternatives to getting the result I need?
EDIT: here is what is returned from doing
$exp = explode("src=", $thing);
var_dump($exp[1]);
var_dump($exp);
Result:
string(226) ""http://awpagesociety.com/attachments/c881c9ec924cfd1ee7f0650f2b6de9b36d4e31a9/store/limit/452/300/25f7a5696d2bd1d5e4d1137924ff04e3e2c8333fa8c71e005462a4e710d9/Walker_Recording.jpg" /><iframe style="border: none" " array(3) { [0]=> string(43) " string(226) ""http://awpagesociety.com/attachments/c881c9ec924cfd1ee7f0650f2b6de9b36d4e31a9/store/limit/452/300/25f7a5696d2bd1d5e4d1137924ff04e3e2c8333fa8c71e005462a4e710d9/Walker_Recording.jpg" /><iframe style="border: none" " [2]=> string(3454) ""//html5-player.libsyn.com/embed/episode/id/9576506/height/90/theme/custom/thumbnail/yes/direction/forward/render-playlist/no/custom-color/000000/" height="90" width="50%" scrolling="no" allowfullscreen="" webkitallowfullscreen="" mozallowfullscreen="" oallowfullscreen="" msallowfullscreen=""><span id="selection-marker-1" class="redactor-selection-marker"></span></iframe> <p><em><br></em></p> <p><em>If you’re interested in more conversations like this on The New CCO, subscribe on <span class="redactor-unlink"></span><span class="redactor-unlink"></span><a href="https://podcasts.apple.com/us/podcast/upskilling-a-workforce-reggie-walker-pwc/id1212422149?i=1000436862014" target="_blank">iTunes</a>, <span class="redactor-unlink"></span><a href="https://play.google.com/music/m/Dd6jidfd7eq4pzgwx7p3w6gigxm?t=Upskilling_a_Workforce_-_Reggie_Walker_PwC-The_New_CCO" target="_blank">Google Play</a>, or <span class="redactor-unlink"></span><span class="redactor-unlink"></span><a href="https://open.spotify.com/show/5oLW0nzEPyNo7mfcSFfIcu?si=gDn3b288RoiG8k9Xz9xH6g" target="_blank">Spotify</a>.</em></p> <p class="text-center">* * *</p> <p>Enterprises face severe disruption, whether via technology, business model, new competition, etc. In order to keep up, organizations must answer fundamental questions about the nature of their business, starting with their people. “What kind of culture do we need to compete in our industry? What does it look like, feel like, sound like? What are the base skills our people possess? Where do they come from?” </p> <p>These are some of the questions Reggie Walker, Chief Commercial Officer at PwC, has wrestled with while leading the enterprise's communications function over the past three years. He’s led a critical organization-wide effort around digital upskilling to better align PwC’s people with its business strategy. He’s also unified the Communications, Sales and Marketing functions, streamlining an operation that was once disparate entities. </p> <p>On this episode of The New CCO, we’ll learn more about each of these initiatives from Reggie and how they ladder up to a new kind of CCO role that’s swiftly changing in order to adapt to new disruptive factors. </p> <p>Here’s Reggie’s take on where he sees the future of work going over the next five years:</p> <p>“The opportunities are almost endless. We have to be responsible. And by that I mean there’s a lot of things we can do with technology. We have to make sure we’re not overextending the reach of certain technologies and cannibalizing jobs and opportunities. But, man, where will it not take us? That’s the fun part.”</p> <p><em>Do you have a story to tell? Share it with us. Please reach out to Justin Pallenik at <a href="mailto:jpallenik@page.org" target="_blank">jpallenik@page.org</a> with your CCO story.</em></p>" } string(3252) ""http://awpagesociety.com/attachments/20aa91b841d6a49dd945a97af37509add2680573/store/limit/452/300/e6941ac426f6cbca5774cad6f2e8b6447c96d92d32957be6709dac201de7/Brady-Bush.jpg" /><p>
And I want to just return each image source separately, such as
"http://awpagesociety.com/attachments/c881c9ec924cfd1ee7f0650f2b6de9b36d4e31a9/store/limit/452/300/25f7a5696d2bd1d5e4d1137924ff04e3e2c8333fa8c71e005462a4e710d9/Walker_Recording.jpg", "http://awpagesociety.com/attachments/20aa91b841d6a49dd945a97af37509add2680573/store/limit/452/300/e6941ac426f6cbca5774cad6f2e8b6447c96d92d32957be6709dac201de7/Brady-Bush.jpg"
Basically want to cut all of the other content out such as the text between the styling tags and other formatting.
EDIT 2 XML sample:
<?xml version="1.0" encoding="UTF-8"?>
<feed xml:lang="en-US" xmlns="http://www.w3.org/2005/Atom">
<id>tag:page.org,2005:/blog</id>
<link rel="alternate" type="text/html" href="https://page.org"/>
<link rel="self" type="application/atom+xml" href="https://page.org/blog.atom"/>
<title>Blog | Arthur W. Page Society</title>
<updated>2019-04-29T16:00:00Z</updated>
<entry>
<id>tag:page.org,2005:BlogPost/29039</id>
<published>2019-04-29T16:00:00Z</published>
<updated>2019-04-30T15:52:28Z</updated>
<link rel="alternate" type="text/html" href="https://page.org/blog/the-new-cco-podcast-upskilling-a-workforce-reggie-walker-pwc"/>
<title>The New CCO Podcast: Upskilling a Workforce - Reggie Walker, PwC</title>
<content type="html"><img alt="" class="attachment image image" src="http://awpagesociety.com/attachments/c881c9ec924cfd1ee7f0650f2b6de9b36d4e31a9/store/limit/452/300/25f7a5696d2bd1d5e4d1137924ff04e3e2c8333fa8c71e005462a4e710d9/Walker_Recording.jpg" />&lt;iframe style=&quot;border: none&quot; src=&quot;//html5-player.libsyn.com/embed/episode/id/9576506/height/90/theme/custom/thumbnail/yes/direction/forward/render-playlist/no/custom-color/000000/&quot; height=&quot;90&quot; width=&quot;50%&quot; scrolling=&quot;no&quot; allowfullscreen=&quot;&quot; webkitallowfullscreen=&quot;&quot; mozallowfullscreen=&quot;&quot; oallowfullscreen=&quot;&quot; msallowfullscreen=&quot;&quot;&gt;&lt;span id=&quot;selection-marker-1&quot; class=&quot;redactor-selection-marker&quot;&gt;&lt;/span&gt;&lt;/iframe&gt;
&lt;p&gt;&lt;em&gt;&lt;br&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;If you’re interested in more conversations like this on The New CCO, subscribe on&amp;nbsp;&lt;span class=&quot;redactor-unlink&quot;&gt;&lt;/span&gt;&lt;span class=&quot;redactor-unlink&quot;&gt;&lt;/span&gt;&lt;a href=&quot;https://podcasts.apple.com/us/podcast/upskilling-a-workforce-reggie-walker-pwc/id1212422149?i=1000436862014&quot; target=&quot;_blank&quot;&gt;iTunes&lt;/a&gt;,&amp;nbsp;&lt;span class=&quot;redactor-unlink&quot;&gt;&lt;/span&gt;&lt;a href=&quot;https://play.google.com/music/m/Dd6jidfd7eq4pzgwx7p3w6gigxm?t=Upskilling_a_Workforce_-_Reggie_Walker_PwC-The_New_CCO&quot; target=&quot;_blank&quot;&gt;Google Play&lt;/a&gt;, or&amp;nbsp;&lt;span class=&quot;redactor-unlink&quot;&gt;&lt;/span&gt;&lt;span class=&quot;redactor-unlink&quot;&gt;&lt;/span&gt;&lt;a href=&quot;https://open.spotify.com/show/5oLW0nzEPyNo7mfcSFfIcu?si=gDn3b288RoiG8k9Xz9xH6g&quot; target=&quot;_blank&quot;&gt;Spotify&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;
&lt;p class=&quot;text-center&quot;&gt;* * *&lt;/p&gt;
&lt;p&gt;Enterprises face severe disruption, whether via technology, business model, new competition, etc. In order to keep up, organizations must answer fundamental questions about the nature of their business, starting with their people. “What kind of culture do we need to compete in our industry? What does it look like, feel like, sound like? What are the base skills our people possess? Where do they come from?”&amp;nbsp;&lt;/p&gt;
&lt;p&gt;These are some of the questions Reggie Walker, Chief Commercial Officer at PwC, has wrestled with while leading the enterprise&#39;s communications function over the past three years. He’s led a critical organization-wide effort around digital upskilling to better align PwC’s people with its business strategy. He’s also unified the Communications, Sales and Marketing functions, streamlining an operation that was once disparate entities.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;On this episode of The New CCO, we’ll learn more about each of these initiatives from Reggie and how they ladder up to a new kind of CCO role that’s swiftly changing in order to adapt to new disruptive factors.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Here’s Reggie’s take on where he sees the future of work going over the next five years:&lt;/p&gt;
&lt;p&gt;“The opportunities are almost endless. We have to be responsible. And by that I mean there’s a lot of things we can do with technology. We have to make sure we’re not overextending the reach of certain technologies and cannibalizing jobs and opportunities. But, man, where will it not take us? That’s the fun part.”&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Do you have a story to tell? Share it with us. Please reach out to Justin Pallenik at &lt;a href=&quot;mailto:jpallenik@page.org&quot; target=&quot;_blank&quot;&gt;jpallenik@page.org&lt;/a&gt; with your CCO story.&lt;/em&gt;&lt;/p&gt;</content>
<author>