PHP填坑

这里记录下最近PHP踩过的坑,很多都是语法性错误

(1)函数结尾忘记加;

例如匿名函数

<?php
    $show = function($value){
        echo $value."你好";
    }
    $show("Tony");
?>

写了个匿名函数,正常情况应该输出Tony 你好。但是这里报错,显示

解析错误:语法错误,在第13行的C:\ PHPTutorial \ WWW \ index.php中出现意外的'$ show'(T_VARIABLE)

找了半天才测试出是函数没有加;,而错误提示不能精准地定位到出错行

【总结】①函数先写好形势,加上;②在报错行附近找错误源

 

(2)函数忘记传参

函数规定了参数后就必须传参,除非参数设定了默认值

 

(3)提交form表单时,如果action为空,那么就会提交到当前页面

 

(4)①global后可以跟多个变量,例如global $a,$b,$c等等;②global只能传递变量,不能将其变为全局变量

 

(5)超全局变量$GLOBALS()不仅可以把变量转为全局变量,还可以进行修改

 

(6)JAVA,JS,PHP等代码都是从上到下,逐行读取的。PHP里若没有exit函数,则会读取完毕

 

(7)递归函数:自己调用自己

 

(8) 参数的数据类型

 例如,系统内置函数举例copy()拷贝文件,两个参数必须为字符串

<?php
    if(copy('a.txt', 'b.txt')){
        echo "复制成功";
    }else{
        echo "复制成功失败";
    }
?>

 

(9)echo、print、print_r区别

①echo 是语言结构,不是函数或者方法,使用的时候可以不加括号,多用于单行字符串的输出。效率我记得是比print()高。
②print() 也是单行输出,但他是函数,使用时要把字符串做为参数传给print()函数。有些服务端程序用PHP来写的,输出会用到print();而不用echo ; 这个我不太清楚是什么原因……
③print_r () 可以用来遍历并输出数组的函数,我一般是在调试程序的过程中用来查看数组内容的。也可以用来输出单一的字符串。一般只在调试程序过程中使用。程序写好后,要把这东东去掉。

其他解释:

echo和print都可以做输出,不同的是,echo不是函数,没有返回值,而print是一个函数有返回值,所以相对而言如果只是输出 echo 会更快,而print_r通常用于打印变量的相关信息,通常在调试中使用。
print 是打印字符串
print_r 则是打印复合类型 如数组 对象

 

(10)修改php.int配置后无效?

          所有配置修改,都需要重启Apache服务器才会生效。

 

(11)PHP入口文件index.php

 

(12)PHP除了通过php.int配置参数外,还可以通过ini_get()获取,ini_set()设置参数。不过只能作用在当前文件下

 

 (13)删除和更新MySQL数据时,需要在尾部添加where条件。否则会对整个表单产生影响。

 

 (14)注意:删除重要数据前要备份

.

posted @ 2018-03-15 16:00  剑仙6  阅读(115)  评论(0编辑  收藏  举报
欢迎访问个人网站www.qingchun.在线