在PHP中是否可以不使用SQL函数将字符串转换为varbinary

在PHP中是否可以不使用SQL函数将字符串转换为varbinary,php,sql-server,codeigniter,Php,Sql Server,Codeigniter,我想知道是否可以使用PHP将字符串转换为varbinary,以获得与使用SQL函数convert(varbinary,'data')相同的效果。我之所以这样做,是因为我使用的是codeigniter,并且希望使用活动记录进行此查询,因此不直接使用SQL字符串,但我需要将数据插入MS-SQL中的varbinary字段 谢谢:)如果您使用的是最新版本的PHP,则可以将字符串转换为二进制 $binary = (binary)$string; PHP5.2.1中添加了(二进制)强制转换和b前缀前向支持

我想知道是否可以使用PHP将字符串转换为varbinary,以获得与使用SQL函数
convert(varbinary,'data')
相同的效果。我之所以这样做,是因为我使用的是codeigniter,并且希望使用活动记录进行此查询,因此不直接使用SQL字符串,但我需要将数据插入MS-SQL中的varbinary字段


谢谢:)

如果您使用的是最新版本的PHP,则可以将字符串转换为二进制

$binary = (binary)$string;
PHP5.2.1中添加了(二进制)强制转换和b前缀前向支持


您也可以使用pack功能

范例 将{3265464435634543646346366357547}转换为无符号整数形式的var二进制

$_BIN=pack('I*',326546,4356345,43646346,366357547)

你可以在网站上找到更多的例子

谢谢,直到现在,这对我转换到另一种方式非常有帮助<代码>$data=hex2bin(substr($data,2))这正是我想要的,但它以字符串形式返回一个二进制值。有没有办法解决这个问题,因为我需要一个原始二进制值来插入数据库,而不是varchar。
public static function str2bin($str) { 
  return '0x'.strtoupper(bin2hex($str));
}