2011-05-20 61 views
1

我試圖用SimpleXML輸出圖像,但圖像標記未出現在源代碼中。使用SimpleXML輸出圖像src

誰能幫我outpout這一形象:

這裏是我的XML和代碼:

 <?php foreach($xml->Event as $event) { ?> 
     <li> 
      <a href="<?php echo $event->link; ?>"> 
       <?php if ($event->Media['url'] == !null) { ?> 
        <img src="<?php echo $event->Media['url'];?>" alt="<?php echo $event->title;?> thumbnail" /> 
       <?php } ?> 
       <h3><?php echo $event->title; ?></h3> 
       <p><strong><?php echo $event->beginDate; ?> at <?php echo $event->beginTime; ?></strong></p> 
       <p><?php echo $event->location; ?></p> 
      </a> 
     </li> 
     <?php } ?> 
+0

你指着XML是一個HTML頁面給我。你可以用一些Event元素內聯粘貼它嗎? – 2011-05-20 18:30:01

+2

請var_dump($事件) – Danzan 2011-05-20 18:45:06

+0

@onteria對不起,我的XML鏈接是錯誤的。它已被更新。 – Ryan 2011-05-20 21:19:39

回答

2

你的問題就在這裏:

  <?php if ($event->Media['url'] == !null) { ?> 
       <img src="<?php echo $event->Media['url'];?>" alt="<?php echo $event->title;?> thumbnail" /> 
      <?php } ?> 

你試圖訪問的URL,就好像是一個屬性,則需要使用->url,而不是訪問它作爲一個子元素。

  <?php if ($event->Media->url != null) { ?> 
       <img src="<?php echo $event->Media->url;?>" alt="<?php echo $event->title;?> thumbnail" /> 
      <?php } ?> 

編輯:順便說一下,== !null作品如您所願,但!= null有點友善和減少混亂

+0

完美!它現在效果很好 - 謝謝:) – Ryan 2011-05-20 21:32:51

0

你的if語句是不正確。它應該是:

if ($event->Media['url'] != null) 
+0

其實這比你想象的更巧妙''event-> Media ['url'] ==!null'在以下代碼中有一個提示:'if(true ==!null){echo「true 「;}'輸出?'true'。原因是你正在檢查值是否定***否的null,其不爲null等於true。雖然是的,正如我提到的那樣!= null更容易閱讀。 – 2011-05-20 21:34:56