草庐IT

utf8_turkish_ci

全部标签

php - 如何在 CI 中使用 OR 和 AND 运算符进行查询?

我尝试通过ActiveRecords在Codeigniter中进行查询:if(isset($data['where']['and'])){$this->db->where($data['where']['and']);}if(isset($data['where']['or'])){$this->db->or_where_in('idSpec',$data['where']['or']);}我想得到:WHEREname=1AND(idSpec=2ORidSpec=3ORidSpec=4);但现在我得到:WHEREname=1ORidSpec=2ORidSpec=3ORidSpec=4;

php json_encode 将utf8字符串转为字符编码

我有一个波斯语文本“سرما”然后当我使用json_encode()将其转换为JSON时,我得到了一系列转义字符代码,例如\u0633,这似乎是预期的并且是理性的过程。但我的困惑在于我不知道如何将它们转换回可读的字符串。我应该如何在PHP中执行此操作?我应该使用mb_*家族的任何东西吗?我还检查了json_encode()参数,但没有找到适合我的东西。更新我保存在我的数据库中的是:[“u0633u0631u0645u0627”]这表明字符没有正确转义。而如果我把它改成["\u0633\u0631\u0645\u0627"]通过json_decode()可以轻松读取

php - 如何在 PHP 中将 UTF-16 十六进制字符串转换为 UTF-8?

我有来自strace的以下输出,我想使用PHP将其转换为UTF-8:R\00f6dhakev\00e4gen4R\00e4ntm\00e4starv\00e4gen24K\00d8BENHAVN我认为上面的字符串是UTF16HEX。 最佳答案 发现下面的函数起作用了:functionutf8_urldecode($str){$str=str_replace("\\00","%u00",$str);$str=preg_replace("/%u([0-9a-f]{3,4})/i","&#x\\1;",urldecode($str));r

php - Javascript crc32 函数和 PHP crc32 与 UTF8 不匹配

我一直在尝试从PHP获取crc32函数以匹配javascript生成的结果。我浏览了在网上找到的4个不同的javascriptcrc32库(1、2、3、4),它们都适用于ascii,但是当你向它抛出utf8字符时,所有四个js库都输出相同的错误答案。Thisoldstackoverflowquestion似乎是最接近的答案,但在我的测试中仍然不起作用。例如:php:crc32('tést')=727386373javascript:crc32.genBytes('tést')=3109344618为方便起见,这里是最紧凑的版本。functionstringToBytes(str){va

PHP多字节替代UTF8

我一直在寻找字符串操作函数的UTF8安全替代方案。我发现了很多不同的意见和建议。我想问一下以下函数是否会导致UTF-8出现问题,如果会,我应该使用什么来代替。我知道PHP手册中的mb_前缀函数列表,但并不是我正在使用的所有函数。函数有:内爆、爆炸、str_replace、preg_match、preg_replace谢谢 最佳答案 explode只是寻找相同的字节序列并在该点分隔字符串。由于UTF-8与ASCII安全地向后兼容,因此无需担心,它会正常工作。implode只是将字符串组合在一起,由于UTF-8的特性,它也能正常工作。s

php - UTF8 到 CP1255 转换

我正在尝试将UTF-8字符串转换为CP1255(希伯来语)我试过运行以下命令(我正在使用detect_encoding因为我的一些输入不是UTF-8):foreach($paramas$key=>$value){$newval=iconv(mb_detect_encoding($value),"cp1255",$value);$querystr.=$key."=".$newval."&";}不管怎样,结果是所有的希伯来字符都返回漂亮的�符号,所有其他(英文/数字)都符合预期并保持原样。我怎样才能正确地做到这一点? 最佳答案 我找到了

php - codeigniter - 升级 php 和 apache 后未找到 fatal error 类 'CI_Controller'

我在升级Apache从2.2.19.0到2.4.16.0和php从5.3.7.0到5.6.12.0现在我得到这个错误:Fatalerror:Class'CI_Controller'notfoundinsystem\core\CodeIgniter.phponline234CodeIgniter.php第221-235行//LoadthebasecontrollerclassrequireBASEPATH.'core/Controller.php';/***ReferencetotheCI_Controllermethod.**ReturnscurrentCIinstanceobject

php - Travis.ci 环境变量不在 phpunit 中读取

有人能帮我理解为什么我的环境变量没有在我的phpunit测试中从travis.ci中读取吗?所以我正在尝试使用travis为我正在开发的php/javascript应用程序编写一些自动测试。但是,当我编写测试以检查从travis读取到phpunit的环境变量时,它们失败了。这意味着(据我所知)环境变量无法被phpunit读取,或者它们没有正确传递给travis测试。.travis.ymllanguage:phpphp:-'7.0'-'7.1'before_install:-echo"extension=ldap.so">>php--ini|grep"LoadedConfiguratio

PHP utf8问题

我在将包含挪威字符的数组与utf8字符进行比较时遇到了一些问题。除了特殊的挪威字符(æ、ø、å)之外的所有字符都可以正常工作。functionisNorwegianChar($Char){$aNorwegianChars=array('a','A','b','B','c','C','d','D','e','E','f','F','g','G','h','H','i','I','j','J','k','K','l','L','m','M','n','N','o','O','p','P','q','Q','r','R','s','S','t','T','u','U','v','V','w'

php - 如何在我的 utf-8 编码页面上正确显示 utf 编码字符?

我正在检索电子邮件,我的一些电子邮件有utf编码的文本。然而,即使我的页面被编码为utf8-在某些地方,当我尝试输出utf文本时,我会得到有趣的字符,例如:=?utf-8?B?Rlc6INqp24zYpyDYotm+INin2LMg2YXYs9qp2LHYp9uB2bkg2qnbjCDZhtmC?==?utf-8?B?2YQg2qnYsdiz2qnYqtuSINuB24zaug==?=而在同一页面的其他区域显示正常。这是怎么回事? 最佳答案 这不是“有趣的字符”,它们是合法的ASCII字符。只是该字符串是为传输而进行的MIME编码,