Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/blackberry/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 从XML字符串获取文本_Php - Fatal编程技术网

Php 从XML字符串获取文本

Php 从XML字符串获取文本,php,Php,我正试图通过以下xml文件获取最新日期的散装柴油价格: 我已经使用simplexml\u load\u string来获取通道项描述,它是一个字符串 Latest fuel prices at 24 May 2016<p>86.28ppl<br>88.84ppl<br>39.31ppl<br></p><p>PricesfromAccenture</p> "; } } 只需执行以下操作: $str='截至2016

我正试图通过以下xml文件获取最新日期的散装柴油价格:

我已经使用simplexml\u load\u string来获取通道项描述,它是一个字符串

Latest fuel prices at 24 May 2016<p>86.28ppl<br>88.84ppl<br>39.31ppl<br></p><p>PricesfromAccenture</p>
"; } } 只需执行以下操作:

$str='截至2016年5月24日的最新燃料价格86.28ppl
88.84ppl
39.31ppl

价格期货价格

; $arr=爆炸(“”,$str); $arr=explode(“
”,$arr[1]); echo$arr[0];//86.28ppl
只需执行以下操作:

$str='截至2016年5月24日的最新燃料价格86.28ppl
88.84ppl
39.31ppl

价格期货价格

; $arr=爆炸(“”,$str); $arr=explode(“
”,$arr[1]); echo$arr[0];//86.28ppl
链接中的
说明
标记的内容与问题中的内容不同。链接中的标记可以处理为:

$arr=explode(,$entry->description);
$arr=explode(“,$arr[1]);

$arr=explode(链接中
description
标记的内容与问题中的内容不同。链接中的标记可以处理为:

$arr=explode(,$entry->description);
$arr=explode(“,$arr[1]);

$arr=爆炸("使用
分解第二部分,然后使用

再次分解第二部分,并收集第一部分。是的,我使用了xml解析器。这是项目描述。链接中的描述与问题中的描述不同。可能,您的问题是?使用
分解第二部分,然后使用

再次分解第二部分d收集第一部分。是的,我使用了xml解析器。这是项目描述。链接中的描述与问题中的描述不同。也许,你的问题是?尝试了这个,但它不起作用。我认为由于在
$str
中有双引号,你检查了在线检查吗?你只给出了字符串,我应用了一些操作。请尝试此链接内容:,该链接将不起作用,只需复制内容并在
phpfiddle
或本地运行即可machine@user892134,您是否已完成或需要更多支持?如果已完成,请将此标记为答案。尝试此操作后,它不起作用。我想,由于您在检查的地方使用了双引号,
$str
,您是否检查了联机检查??您只需提供字符串,我就可以对其应用一些操作。尝试此链接内容:,该链接将不起作用,只需复制内容并在
phpfidle
或本地运行即可machine@user892134,您是否完成或需要更多支持?如果完成,请将此标记为答案。
 $url = "http://www.fta.co.uk/feeds/daily_fuel_price.xml";
    if (($response_xml_data = file_get_contents($url))===false){
        echo "Error fetching XML\n";
    } else {
       libxml_use_internal_errors(true);
       $data = simplexml_load_string($response_xml_data);
       if (!$data) {
           echo "Error loading XML\n";
           foreach(libxml_get_errors() as $error) {
               echo "\t", $error->message;
           }
       } else {
      //    echo "<pre>";
       //$data = simplexml_load_string($data->channel->item->description);
       foreach ($data->channel->item as $entry){
        echo $entry->title;
      //echo $entry->description;
      $str = preg_replace('#(<b.*?>).*?(</b>)#', '$1$2', $entry->description); //remove text between bold tags

      $str = str_replace("<b></b>","",$str); //remove bold tags
    $str = preg_replace('/\s+/', '', $str);  //remove whitespace
   $arr = explode("<p>", $str);

    $arr = explode("<br>", $arr[1]);
    echo $arr[0];
      break;
       }
       //echo "</pre>";
       }
    }
$str = 'Latest fuel prices at 24 May 2016<p>86.28ppl<br>88.84ppl<br>39.31ppl<br></p><p>PricesfromAccenture</p>';

$arr = explode("<p>", $str);

$arr = explode("<br>", $arr[1]);
echo $arr[0]; //86.28ppl
  $arr = explode("<p>", $entry->description);
  $arr = explode("</b>", $arr[1]);
  $arr = explode("<br", $arr[1]);
  $desc = trim($arr[0]); // 86.28ppl