使用php以utf-8格式从oracle获取数据

使用php以utf-8格式从oracle获取数据,php,oracle,Php,Oracle,我在从oracle数据库获取数据时遇到问题。如何在utf-8中获取数据?浏览器显示带有回音的符号,但oracle的数据有回音吗?用记号代替字母 <head> <meta http-equiv="content-type" content="text/html; charset=utf-8"></meta> </head> <?php $tns2 = "(DESCRIPTION = (ADDRESS = (PROTOCOL = TC

我在从oracle数据库获取数据时遇到问题。如何在utf-8中获取数据?浏览器显示带有回音的符号,但oracle的数据有回音吗?用记号代替字母

    <head>
<meta http-equiv="content-type" content="text/html; charset=utf-8"></meta>
</head>
<?php

 $tns2 = "(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = hostname)(PORT = 1521)) (CONNECT_DATA = (SID = sidname)))";
   if ($conn = oci_connect("user","pass", $tns2))
   {
       echo "YAY!";
       //oci_close($conn);
   }
   else
   {
       die("Nesiseka");
   }

$stid = oci_parse($conn, 'SELECT * rowname where rownum<=10');
oci_execute($stid);

oci_close($conn);

echo "<table border='1'>\n";
while ($row = oci_fetch_array($stid, OCI_ASSOC+OCI_RETURN_NULLS)) {
    echo "<tr>\n";
    foreach ($row as $item) {
        echo "    <td>" . ($item !== null ? htmlentities($item, ENT_QUOTES) : "&nbsp;") . "</td>\n";
    }
    echo "</tr>\n";
}
echo "</table>\n";
echo"įęėšųį";
?>


将php编码设置为utf 8

mb_internal_encoding("UTF-8");
更多链接
简单的解决方案。如果($conn=oci\u connect(username,pass,$tns2,'AL32UTF8'))
现在一切正常,则只在第
行中添加'AL32UTF8'。

感谢您的帮助

使用此选项建立数据库连接:

$conn = oci_connect(username,pass, $tns2 , 'AL32UTF8')

SELECT*rowname where rownum您的NLS_*会话和数据库变量是用什么设置的?但是除了oracle数据库中的数据之外,其他一切都可以工作我认为不在UTF-8中数据库字符集是什么?您是否正确设置了NLSęU LANG环境变量?该变量已设置,回显“įęėųį”;显示良好,但oracle数据库中的数据显示为?它不是与Oracle 11g合作,而是与Oracle 10g合作。有什么想法吗?它也适用于Oracle 10g。查看Oracle提供的。帮助我在Oracle数据库12c上使用symfony 4,其中utf-8字符不希望在我的twig模板中正确显示。在搜索了数小时后,我挽救了生命。在使用德语特殊字符查询数据库时出现了什么问题,结果丢失。