Ⅰ php怎样将二进制流存到文件中
整形转化成2二进制可以用base_convert:
$str=0x8000;
echo$str2=base_convert($str,16,2);
echo'<br>';
echobase_convert($str2,2,16);
[code]
字符串文件等可以考虑用pack和unpack转化成二进制
[code=PHP]
$file1='F:/46.gif';//随便拷一个图片作为测试用
$file2='F:/test.txt';//生成的二进制流保存在这个文件里
$file3='F:/47.gif';//由二进制流还原成的文件
$size=filesize($file1);
echo'文件大小为:'.$size;
echo" <br>转化为二进制...";
$content=file_get_contents($file1);
$content=bstr2bin($content);
$fp=fopen($file2,'w');
fwrite($fp,$content);
fclose($fp);
$size2=filesize($file2);
echo'转化成二进制后文件大小为:'.$size2;
$content=bin2bstr($content);
$fp=fopen($file3,'w');
fwrite($fp,$content);
fclose($fp);
functionbin2bstr($input)
//Convertabinaryexpression(e.g.,"100111")intoabinary-string
{
if(!is_string($input))returnnull;//Sanitycheck
//Packintoastring
$input=str_split($input,4);
$str='';
foreach($inputas$v)
{
$str.=base_convert($v,2,16);
}
$str=pack('H*',$str);
return$str;
}
functionbstr2bin($input)
//Binaryrepresentationofabinary-string
{
if(!is_string($input))returnnull;//Sanitycheck
//Unpackasahexadecimalstring
$value=unpack('H*',$input);
//Outputbinaryrepresentation
$value=str_split($value[1],1);
$bin='';
foreach($valueas$v)
{
$b=str_pad(base_convert($v,16,2),4,'0',STR_PAD_LEFT);
$bin.=$b;
}
return$bin;
}
Ⅱ php如何判断某变量的类型
1、gettype()
gettype 会根据 参数类型返回值 。
例如:
gettype('1');返回的是string。
而gettype(1);返回的是integer。
2、empty
如果 变量 是非空或非零的值,则 empty() 返回 FALSE。换句话说,”"、0、”0″、NULL、FALSE、array()、var $var、未定义;以及没有任何属性的对象都将被认为是空的,如果 var 为空,则返回 TRUE。
3、isset
如果 变量 存在(非NULL)则返回 TRUE,否则返回 FALSE(包括未定义)。变量值设置为:null,返回也是false;unset一个变量后,变量被取消了。注意,isset对于NULL值变量,特殊处理。
(2)isstringphp扩展阅读
PHP 在变量定义中不需要(或不支持)明确的类型定义;变量类型是根据使用该变量的上下文所决定的。也就是说,如果把一个 string 值赋给变量$var,$var就成了一个 string。如果又把一个integer 赋给$var,那它就成了一个integer。
PHP 的自动类型转换的一个例子是乘法运算符“*”。如果任何一个操作数是float,则所有的操作数都被当成float,结果也是float。否则操作数会被解释为integer,结果也是integer。注意这并没有改变这些操作数本身的类型;改变的仅是这些操作数如何被求值以及表达式本身的类型。
Ⅲ php判断是否为数字
1、输出变量的数据类型(gettype)
<?php
$arry = array('a','b','c');
echo gettype($arry);//array
?>
2、输出变量的数据类型、包含的数量以及具体内容(var_mp)
<?php
$str = 'hello world';
var_mp($str);//string(11) "hello world"
?>
(3)isstringphp扩展阅读:
检测某个变量是否是指定的数据类型(is_array、is_string、is_int、is_double等),如果为真返回1,如果为假返回空。
<?php
$num = 123;
if(is_array($num)){
echo '这是一个数组';
}else if(is_string($num)){
echo '这是一个字符串';
}else if(is_int($num)){
echo '这是一个整数';
}else if(is_double($num)){
echo '这是一个浮点数';
}
?>
Ⅳ php 怎么判断一个值为字符串
<?php
$a='你要判断的值';
$res=is_string($str);
if($res)
{
echo'该值类型为字符串';
}else
{
echo'该值不是字符串';
}
?>
Ⅳ php中if(int==$a)这样写对吗
不对,不能用类型和变量做比较。
你可以使用is_int这个函数来判断。
php中有很多这样的函数,比如is_float。
判断变量和常量是否相等可以使用==来进行判断。
Ⅵ PHP练习题
1、PHP语言标记是(B )。
A、<……>
B、<?php……?>
C、?…………?
D、/*………*/
2、PHP代码要想以“<?”为开头,以“?>”为结束,需要启用配置文件中的(A )选项。
A、short_open_tag
B、asp_tags
C、allow_call_time_pass_reference
D、safe_mode_gid
4、PHP语句以什么符号结束( C )
A、 .
B、 :
C、 ;
D、无需任何符号,换行就行
5、PHP中那些字符被认为是间隔字符(空白符)( A )。
A、空格
B、下划线字符
C、制表符
D、回车符