2011-08-24 28 views
12

Tôi đang cố tạo một Widget trong Wordpress và tôi đang gặp sự cố khi tạo đối tượng SimpleXMLElement.Không thể tìm thấy SimpleXMLElement khi làm việc với các không gian tên

Đây là mã:

namespace GenieKnows_Search; 

class GenieKnows_Search_Widget extends \WP_Widget { 
    //Constructor 
    function __construct() { 
     parent::__construct('genieknows_search_widget', 'GenieKnows_Search_Widget'); 
    } 

    //Irrelevant Code. Removed for readability. 

    //Return the XML 
    function retrieve_gk_xml() { 
      $xml = new SimpleXMLElement($this->create_gk_xml(), 0, true); //Line 114 
      return $xml->xpath('/feed/results/sponsored/listing'); 
    } 
} 

Dưới đây là lỗi:

PHP Fatal error: Class 'GenieKnows_Search\SimpleXMLElement' not found in /var/www/myticketpick.com/wp-content/plugins/genieknows-search/genieknows_search.php on line 114

Nó sẽ xuất hiện mà nó đang cố gắng tìm kiếm các lớp SimpleXML bên trong namespace GenieKnows_Search của tôi, tuy nhiên tôi tại một mất mát là tại sao.

Bất kỳ ý tưởng nào về lý do lỗi này xảy ra và cách tôi có thể sửa lỗi đó?

Trả lời

33

Việc sửa chữa là tôi cần thêm một dấu gạch chéo() trước SimpleXMLElement:

$xml = new \SimpleXMLElement($this->create_gk_xml(), 0, true); 

Như đã nêu here.

+3

này không làm việc cho tôi. Tôi đang sử dụng PHP 5.6, libxml, SimpleXML được kích hoạt. – hienbt88

+1

cảm ơn câu trả lời của bạn, thực sự đã giúp tôi – kumar

Các vấn đề liên quan