php怎么调整变量,php报错未定义全局变量?
PHP中的变量作用域,PHP中函数变量和全局是完全隔绝的,也就是无法相互访问。
你想在函数内部访问外部变量,你需要这样:
$test = 123; abc(); //输出123 function abc(){ global $test; echo($test); }$test = 123; abc(); //输出123 function abc(){ global $test; echo($test); } PHP 要尽量不使用全局变量, 全局变量主要使用在项目中顶级的变量 中 比如 项目的目录路径, 数据库信息等 . 如果只是一个模块 中使用还是用参数传进去吧 对于你的代码 , 定义全局变量要接 global global $count=0;
判断year变量存储的年份是闰年的逻辑表达式是什么?
if(year%4==0&&year%100!=0 ||year%400==0)
被4整除或者被400整除,不能被100整除的判定是闰年
php声明和调用变量的符号是什么?
php声明和调用变量的符号主要是var_dump(property_exists($c, 'd')); // bool(true)。
如果对一个未定义的变量进行引用赋值、引用参数传递或引用返回,则会自动创建该变量。
同样的语法可以用在函数中,它返回引用,以及用在 new 运算符中(PHP 4.0.4 以及以后版本)。
自 PHP 5 起,new 自动返回引用,因此在此使用 =& 已经过时了并且会产生 E_STRICT 级别的消息。
运行代码是让$b来引用$a的内容,然后改变$a的内容,$b的内容也会随之变化。具体的标识符包括$a,$b, $c。
PHP中对变量使用单引号和双引号的区别?
在PHP中,单引号和双引号大多数情况下没有区别,但是在一些特殊用法上双引号会多一些功能.
双引号可以直接解析变量而单引号不会
例如:
$a='123';
$b='$a';
$c="$a";
echo $b; //输出$a
echo $c; //输出123
特别注意以下例子
echo '$a的值是'.$a; //输出:$a的值是123 (真正想要的结果)
echo "$a的值是".$a; //输出:123的值是123
上面这种要输出的字符串有和变量重名的,就必须用单引号避免解析.
在混合编写代码时,单双引号可以互补避免出错.
例如:
$html1='<div style="color:red">你好世界</div>';
$html2='<div onclick=alert("你好世界");>点击</div>';
reporting错误报告级别?
错误报告级别:指定了在什么情况下,脚本代码中的错误(这里的错误是广义的错误,包括E_NOTICE注意、E_WARNING警告、E_ERROR致命错误等)会以错误报告的形式输出。
设置错误报告级别的方法:
1. 修改PHP的配置文件php.ini
这种方式设置error_reporting后,重启web服务器,就会永久生效。
这里以xampp集成软件包为例,打开配置文件php.ini,查看错误报告级别error_reporting的默认值,如下:
error_reporting=E_ALL & ~E_DEPRECATED & ~E_STRICT
意思是报告所有的错误,但除了E_DEPRECATED和E_STRICT这两种。
将其修改为:
error_reporting=E_ALL & ~E_NOTICE
意思是报告所有的错误,但除了E_NOTICE这一种。这也是最常用的错误报告级别,它不会报告注意类(如:使用了未定义的变量)的错误。
保存,重启web服务器后生效。
2. 使用error_reporting()函数
这种方式设置后,可以立即生效。但仅限于在当前脚本中的error_reporting()函数调用的后面区域。
int error_reporting ([ int $level ] )
参数可以是整型或对应的常量标识符,推荐使用常量的形式。返回值为当前位置处起作用的错误报告级别的值(整型值)。
下面列举一些错误报告级别:
值 常量 说明
1 E_ERROR 报告导致脚本终止运行的致命错误
2 E_WARNING 报告运行时的警告类错误(脚本不会终止运行)
4 E_PARSE 报告编译时的语法解析错误
8 E_NOTICE 报告通知类错误,脚本可能会产生错误
32767 E_ALL 报告所有的可能出现的错误(不同的PHP版本,常量E_ALL的值也可能不同)
error_reporting(E_ALL ^ E_NOTICE); // 除了E_NOTICE之外,报告所有的错误
error_reporting(E_ERROR); // 只报告致命错误
echo error_reporting(E_ERROR | E_WARNING | E_NOTICE); // 只报告E_ERROR、E_WARNING 和 E_NOTICE三种错误
注意:配置文件php.ini中display_errors的默认值为On,代表显示错误提示,如果设置为Off,就会关闭所有的错误提示。
分类: PHP基础
标签: 错误报告级别, error_reporting, E_ERROR, E_NOTICE