2013-05-07 31 views
1

我一直在做一個函數來獲取joomla 2.5數據庫的具體價值。但是,現在我又遇到了一個問題。在這裏,我的Joomla作出新三個表,讓說如何檢查joomla 2.5中的表數據庫與php

  1. joomlatest_name1_year1
  2. joomlatest_name1_year2

的問題是,如何知道該表確實存在的Joomla數據庫和PHP?感謝提前

回答

7

Joomla!框架提供了一種方法來檢索現有表的名稱。

$tables = JFactory::getDbo()->getTableList(); 
print_r($tables); 

一個簡單的檢查與in_array()能告訴你,如果預期的表存在或不存在。

+0

這項工作,謝謝 – 2013-05-30 02:08:12

1

嘗試使用以下:

$db = JFactory::getDbo(); 
$query = $db->getQuery(true); 
$query->select(array('*')); 
$query->from($db->quoteName('#__name1_year1')); 
$db->setQuery($query); 

if($query){ 
    echo "Table Exists"; 
} 
else { 
    echo "Table doesn't exist"; 
} 

我沒有測試過這一點,但希望它幫助。

+0

我看到了一些新的東西! +1。謝謝。 – zkanoca 2013-05-07 11:52:18

+0

Lodder,這不適用於Joomla 3,我想或者至少在運行擴展安裝script.php時,因爲它會產生錯誤並取消安裝。 – mavrosxristoforos 2014-09-15 11:38:37

+0

@mavrosxristoforos - 我已經更新了我很久以前寫的答案。今晚晚些時候,我會給它一個適當的測試 – Lodder 2014-09-15 12:05:34