php类型判断
⑴ 判断 php 对象类型 是否有方法
我们的中文真是博大精深呀,你的问题竟然隐藏两种含义:
1、如果是判断对象类型:
<?php
$a = 123;
//$a = function (){};
var_mp(gettype($a));
?>
使用自带函数: gettype
2、如果判断对象是否存在什么方法
<?php
class test {
function t(){
}
}
$a = new test();
var_mp(method_exists($a,'t'));
?>
使用函数:method_exists
⑵ PHP 类怎么判断调用方法
给个例子 好好理解下吧 例:<?php
class A
{
function foo()
{
if (isset($this)) {
echo '$this is defined (';
echo get_class($this);
echo ")\n";
} else {
echo "\$this is not defined.\n";
}
}
}
class B
{
function bar()
{
A::foo();
//parent::foo();
}
}
$a = new A();
$a->foo();//动态调用,因为new了对象
A::foo();//静态调用,直接用类名去调用,没有new对象
$b = new B();
$b->bar();//在对象$b中,A::foo();进行静态调用
B::bar();
?>
总结:静态、动态调用都指类、对象对其方法的调用,动态指的是创建(new)了对象,然后用对象变量去调用方法;静态则是没有创建对象,直接用类名去调用。至于另一个对象那就很简单了,不同的类创建不同的对象,比如class A;class B ,$a = new A();$b = new B();$a and $b 相对之间就是另一个对象了。
延伸:伪变量 $this 通常未定义,如果其所在的方法是被静态调用的话。但这不是个严格规定:如果一个方法被从另一个对象内静态调用的话,则 $this 会被定义。此时 $this 的值是那个发出调用的对象。
⑶ php 判断一个值是不是数组类型
$a=1;
if(is_array($a)){
echo'是数组';
}else{
echo'不是数组0';
}
判断变量类型是否为数组类型。
语法:int is_array(mixed var);
返回值:整数
函数种类:PHP 系统功能
内容说明
若变量为数组类型则返回 true,否则返回 false。
⑷ php中判断两个变量是否相同应该怎么写代码如下:
需要准备的材料分别是:电脑、php编辑器、浏览器。
1、首先,打开php编辑器,新建php文件,例如:index.php。
⑸ php switch 怎么判断string 类型呢
$b1 = strpos ( $str, " " ); // b1 b2 第一个空格和第二个空格的index 为了取出月份
$b1实际取得的是空格的索引,所以substr取得的是空格Jan
⑹ php如何判断一个数是不是数值型
用is_int,不过表单提交过来都是字符形式的,必须用is_numeric判断
⑺ 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值变量,特殊处理。
(7)php类型判断扩展阅读
PHP 在变量定义中不需要(或不支持)明确的类型定义;变量类型是根据使用该变量的上下文所决定的。也就是说,如果把一个 string 值赋给变量$var,$var就成了一个 string。如果又把一个integer 赋给$var,那它就成了一个integer。
PHP 的自动类型转换的一个例子是乘法运算符“*”。如果任何一个操作数是float,则所有的操作数都被当成float,结果也是float。否则操作数会被解释为integer,结果也是integer。注意这并没有改变这些操作数本身的类型;改变的仅是这些操作数如何被求值以及表达式本身的类型。
⑻ php中怎么判断格式的文件类型
/**
*获取文件类型
*@paramstring$filename文件名称
*@returnstring文件类型
*/
functiongetFileType($filename){
returnsubstr($filename,strrpos($filename,'.')+1);
}
/**
*获取文件类型2
*@paramstring$filename文件名称
*@returnstring文件类型
*/
functiongetFileType2($filename){
returnstrtolower(pathinfo($filename)['extension']);
}
/**
*获取文件类型3
*@paramstring$filename文件名称
*@returnstring文件类型
*/
functiongetFileType3($filename){
return$exten[count($exten=explode('.',$filename))-1];
}
/**
*获取文件类型4
*@paramstring$filename文件名称
*@returnstring文件类型
*/
functiongetFileType4($filename){
$exten=explode('.',$filename);
returnend($exten);
}
⑼ php怎么判断数据类型
is_array — 检测变量是否是数组
is_bool — 检测变量是否是布尔型
is_callable — 检测参数是否为合法的可调用结构
is_double — is_float 的别名
is_float — 检测变量是否是浮点型
is_int — 检测变量是否是整数
is_integer — is_int 的别名
is_iterable — Verify that the contents of a variable is an iterable value
is_long — is_int 的别名
is_null — 检测变量是否为 NULL
is_numeric — 检测变量是否为数字或数字字符串
is_object — 检测变量是否是一个对象
is_real — is_float 的别名
is_resource — 检测变量是否为资源类型
is_scalar — 检测变量是否是一个标量
is_string — 检测变量是否是字符串
⑽ 用php来编写一个判断文件大小,类型是否符合的代码。
filesize() 用来获取文件大小.
文件类型你定义在数组. 获取文件的扩展名. 判断该扩展名是否在你定义的类型数组中.
就达到你的要求了