Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/243.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
Joomla:JDatabase与来自PHP的直接SQL操作_Php_Mysql_Joomla_Joomla2.5 - Fatal编程技术网

Joomla:JDatabase与来自PHP的直接SQL操作

Joomla:JDatabase与来自PHP的直接SQL操作,php,mysql,joomla,joomla2.5,Php,Mysql,Joomla,Joomla2.5,需要在Joomla2.5中对MySQL数据库进行一些操作 使用以下各项的优缺点是什么: JDatabase或 从PHP直接操作SQL(使用PHP函数:mysql\u connect、mysql\u select\u db、mysql\u query、mysql\u fetch\u row) 使用JDatabase是轻而易举的赢家,因为您必须以某种方式找到所有表的前缀 有了JDatabase,您可以使用#_自动访问此Joomla安装的前缀。(请记住,您可能在一个数据库上安装了各种Joomla)

需要在Joomla2.5中对MySQL数据库进行一些操作

使用以下各项的优缺点是什么:

  • JDatabase或

  • 从PHP直接操作SQL(使用PHP函数:mysql\u connect、mysql\u select\u db、mysql\u query、mysql\u fetch\u row)


使用JDatabase是轻而易举的赢家,因为您必须以某种方式找到所有表的前缀

有了JDatabase,您可以使用
#_
自动访问此Joomla安装的前缀。(请记住,您可能在一个数据库上安装了各种Joomla)

您必须通过其他方式进行各种变通,或者必须创建没有前缀的表,这对于Joomla代码来说也是个坏主意


我不同意wiscWeb。这不是不同意见的问题。到目前为止,我所见过的所有扩展都使用JDatabase类,或者为自己的函数扩展该类。(我已经看到了数百个扩展)

使用JDatabase是轻而易举的赢家,因为您必须以某种方式找到所有表的前缀

有了JDatabase,您可以使用
#_
自动访问此Joomla安装的前缀。(请记住,您可能在一个数据库上安装了各种Joomla)

您必须通过其他方式进行各种变通,或者必须创建没有前缀的表,这对于Joomla代码来说也是个坏主意


我不同意wiscWeb。这不是不同意见的问题。到目前为止,我所见过的所有扩展都使用JDatabase类,或者为自己的函数扩展该类。(我已经看到了数百个扩展)

实际上很容易找到db前缀;但是,如果您正在编写扩展,那么越是遵循标准(在本例中使用JDatabase),读取和扩展代码就越容易。不要忘记引用/转义所有用户提供的值。如果您是对的,他们可能会从全局配置选项中找到它。事实上,这并不难——我没有想到这一点。尽管如此,在为Joomla编写代码时使用JDatabase的优势已经超出了前缀的范围,正如您所提到的。更不用说,如果出于某种原因您切换到另一个数据库,或者您希望将代码重新用于另一个数据库,那么它将是现成的。实际上,找到db前缀相当容易;但是,如果您正在编写扩展,那么越是遵循标准(在本例中使用JDatabase),读取和扩展代码就越容易。不要忘记引用/转义所有用户提供的值。如果您是对的,他们可能会从全局配置选项中找到它。事实上,这并不难——我没有想到这一点。尽管如此,在为Joomla编写代码时使用JDatabase的优势已经超出了前缀的范围,正如您所提到的。更不用说,如果出于某种原因您切换到另一个数据库,或者您希望将代码重新用于另一个数据库,那么它将是现成的。