PHP中的CP850 Sybase阿拉伯语

PHP中的CP850 Sybase阿拉伯语,php,sybase,iconv,Php,Sybase,Iconv,我有一个客户在他的一台服务器上使用Sybase数据库,我被要求用PHP7.1开发一个应用程序,使用这个特定的数据库来选择一些信息,几乎找不到合适的drive=dblib数据库使用charset cp850和varchar列我没有手或选项来更改数据库中的任何内容检索时包含阿拉伯语的列出现(??),因此我在PHP中使用了以下连接字符串 return new PDO ("dblib:host={$ip}:5000;dbname={$this->settings['db']};charset=c

我有一个客户在他的一台服务器上使用Sybase数据库,我被要求用PHP7.1开发一个应用程序,使用这个特定的数据库来选择一些信息,几乎找不到合适的drive=dblib数据库使用charset cp850和varchar列我没有手或选项来更改数据库中的任何内容检索时包含阿拉伯语的列出现(??),因此我在PHP中使用了以下连接字符串

return  new PDO ("dblib:host={$ip}:5000;dbname={$this->settings['db']};charset=cp850","username","password");
并在视图中使用以下内容打印结果
{{iconv('windows-1256','utf-8',$shipper['owner_name'])}

那个???改成了另一种接近阿拉伯语的语言,但仍然不是阿拉伯语。我能用什么或改什么?
我确实使用了Ubuntu操作系统、Laravel Frame Work 5.4、PHP 7.1和其他版本,或者Syabse可以更改我唯一能做的事情就是更改代码,以避免存储在数据库Varchar columns中的二进制数据问题,因为cp850实际上可能会损坏数据。cp850不支持阿拉伯语字符。数据库无法进行转换,很可能会返回损坏的数据,然后将这些数据馈送给iconv,告诉它实际上是Windows-1256(它支持阿拉伯语字符,但输入不是Windows-1256),所以这是不可能的。我对数据库没有控制权,我只是有一个远程连接,并提供对数据库的更改,但这对他来说是不可能的。底线是,如果你不知道数据库中的数据实际上是用什么编码的,你就无法进行这种转换。Sybase似乎支持将
cp1256
指定为连接字符串中的字符集:如果数据实际上是在Windows-1256中编码的,这可能行得通。那么,从数据库中解决该问题的合适方法是什么,或者我可以做些什么来处理查询,即使查询结果是相同的编码,因为cp850实际上可能会损坏数据。cp850不支持阿拉伯语字符。数据库无法进行转换,很可能会返回损坏的数据,然后将这些数据馈送给iconv,告诉它实际上是Windows-1256(它支持阿拉伯语字符,但输入不是Windows-1256),所以这是不可能的。我对数据库没有控制权,我只是有一个远程连接,并提供对数据库的更改,但这对他来说是不可能的。底线是,如果你不知道数据库中的数据实际上是用什么编码的,你就无法进行这种转换。Sybase似乎支持将
cp1256
指定为连接字符串中的字符集:如果数据实际上是在Windows-1256中编码的,这可能就行了。那么,从数据库解决该问题的合适方法是什么?或者,即使查询结果相同,我可以如何处理查询