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)注意:删除重要数据前要备份
.
PHP填坑的更多相关文章
- Android—基于微信开放平台v3SDK,开发微信支付填坑。
接触微信支付之前听说过这是一个坑,,,心里已经有了准备...我以为我没准跳坑出不来了,没有想到我填上了,调用成功之后我感觉公司所有的同事都是漂亮的,隔着北京的大雾霾我仿佛看见了太阳~~~好了,装逼结束 ...
- css 填坑常用代码分享
以下是常用的代码收集,没有任何技术含量,只是填坑的积累.转载请注明出处,谢谢. 因为提交比较麻烦,后来转置github:https://github.com/jsfront/src/blob/mast ...
- 填坑系列:通过ESXi来配置IPMI
近日西安的天气很不错,可是看到从其他地方迁移来的主机在新环境下无法远程调试怪郁闷的,这就需要填坑,要不就会给后来者挖更大的坑. 今天遇到的坑是在IPMI的网络设置里面启用了VLAN标签之后,在新环境下 ...
- Node学习笔记(四):gulp+express+io.socket部署angularJs2(填坑篇)
这篇就先暂停下上篇博客--你画我猜的进度,因为在做这个游戏的时候,想采用最新的ng2技术,奈何坑是一片又一片,这边就先介绍下环境部署和填坑史 既然要用ng2,首先要拿到资源,我这边用的是angular ...
- 【结果很简单,过程很艰辛】记阿里云Ons消息队列服务.NET接口填坑过程
Maybe 这个问题很简单,因为解决方法是非常简单,但填坑过程会把人逼疯,在阿里云ONS工作人员.同事和朋友的协助下,经过一天的调试和瞎捣鼓,终于解决了这个坑,把问题记下来,也许更多人在碰到类似问题的 ...
- 【填坑向】spoj COT/bzoj2588 Count on a tree
这题是学主席树的时候就想写的,,, 但是当时没写(懒) 现在来填坑 = =日常调半天lca(考虑以后背板) 主席树还是蛮好写的,但是代码出现重复,不太好,导致调试的时候心里没底(虽然事实证明主席树部分 ...
- windows下jenkins常见问题填坑
没有什么高深的东西,1 2天的时间大多数人都能自己摸索出来,这里将自己遇到过的问题分享出来避免其他同学再一次挖坑. 目录 1. 主从节点 2. Nuget自动包还原 3. powershell部署 4 ...
- bootstrap-table填坑之旅<一>认识bootstrap-table
应公司需求,改版公司ERP的数据显示样式.由于前期开发的样式是bootstrap,所以选bootstrap-table理所当然(也是因为看了bootstrap-table官网的example功能强大, ...
- 填坑*** WARNING L15: MULTIPLE CALL TO SEGMENT
填坑*** WARNING L15: MULTIPLE CALL TO SEGMENT 警告:发生了重入! 解释:在主循环里调用了一个函数,而在中断服务中又一次调用了同样的函数.当主循环运行到该函数中 ...
- React Native填坑之旅--Stateless组件
Stateless component也叫无状态组件.有三种方法可以创建无状态组件. 坑 一般一个组件是怎么定义的: 很久以前的方法: const Heading = createClass({ re ...
随机推荐
- linux 打包 压缩
序 1.gzip 2.bzip2 3.tar 序 压缩优点 1.节省空间 2.节省带宽 解决脉络 如今有各种压缩文件形式,原因何在?主要是压缩技术更新换代,压缩方法不全然同样.不同的后缀 ...
- 【bzoj3676】[Apio2014]回文串 —— 回文自动机的学习
写题遇上一棘手的题,[Apio2014]回文串,一眼看过后缀数组+Manacher.然后就码码码...过是过了,然后看一下[Status],怎么慢这么多,不服..然后就搜了一下,发现一种新东西——回文 ...
- qq 空间视频地址 的 有效期 403
大约 在24-48小时内 200 http://vwecam.gtimg.com/1006_aa21a85ef3d245f19535cf2ab941ccbb.f0.mp4?ptype=http& ...
- beego1---beego,bee环境配置
1.配置环境变量GOPATH(代码路径,先在里面建立src,pkg,bin3个目录),GOROOT:go安装的目录,go安装目录下的bin目录放到Path环境变量. 安装完bee工具之后,bee 可执 ...
- html5 canvas程序演示--P1197 [JSOI2008]星球大战
html5 canvas程序演示--P1197 [JSOI2008]星球大战 <!doctype html> <html> <head> <meta char ...
- Java IO流中 File文件对象与Properties类(四)
File类 用来将文件或目录封装成对象 方便对文件或目录信息进行处理 File对象可以作为参数传递给流进行操作 File类常用方法 创建 booleancreateNewFile():创建新文件,如果 ...
- [odb-users] Create schema error (unknown database schema '')
Boris Kolpackov boris at codesynthesis.comFri May 31 11:13:02 EDT 2013 Previous message: [odb-users] ...
- vue 简介
Vue.js是一套构建用户界面的渐进式框架.采用自底向上增量开发的设计.Vue的核心值关注视图层非常容易与其他库和已有的项目整合.另外,Vue完全有能力驱动采用单文件组件和Vue生态系统支持的库开发复 ...
- wamp集成环境下帝国备份出错
我在本地wamp环境下面使用帝国备份王时,报错信息如下: Parse error: syntaxerror, unexpected $end in D:wampwwwhuifuclassfunctio ...
- JS中定时器的返回数值ID值
定时器会返回一个数字值id,可以由clearInterval(id)或clearTimeout(id)来实现对对应定时器的清除. setInterval()/setTimeout()BOM中的Wind ...