php-基础知识

1. 字符串中的单引号与双引号的区别?

两者均能表示字符串,不同之处在于双引号包含的变量($str)会被自动替换成变量的实际数值,而单引号中包含的变量则按照普通字符串输出。

需要注意的是:对转义符的使用,在单引号的字符串中,使用单引号时,只要对单引号进行进行转义(\''); 单在双引号字符串中还要注意 双引号,$等字符的使用,这些特殊字符都需要转义符来先转换。

2.  if(‘0’ == “ttt”){echo '相等'} else {echo‘不相等’}; 输出结果?

总结一句话:0等于任何非数字开头的字符串。 由于‘0’ 即0 ,“ttt” 与0比较也是0 ,故两者相等。如需这个条件不成立,则需要使用判断是否全等 “===”, 既要判断数值是否相等还需判断类型是否一致。

3.  对于数据类型转换有两种方法

a. 强制转换,如: 强转为integer, $a = (integer)'123abd'; 结果为$a=123;(注意:字符串只被截取到非数字前,具体看第4点)

b. 使用settype函数, settpye(参数1:变量,参数二:‘转换类型’);如:$a='123abc'; settype($a,'integer'); echo $a;  输出结果为:123; 需要注意的是:参数1放的必须是变量,且settype函数的返回值类型是BOOL。

4. 字符串转换为整型或者浮点型 

  如果字符串是以数字开头的,就会先把数字部分转换为整型,再舍去后面的字符串;如果数字中含有小数点,则会去到小数点前一位。

5. 布尔类型

在php中,不是只有false值才为假,在一些特殊情况下bool值也被认为是false。如 0,  0.0, “0” , “ ”(空字符串);

6. 复合数据类型

    Array(数组)和Object(对象), 两者能够相互转换,

如$array = array('p','h','p');

$obj = $array;

foreach ($obj as  $value) {

echo $value;

}     输出:php

php的数组和iOS有所不同 ,php数组是可以键值对形式存入,它不是根据索引取值。

7. 常量

php中的常量和iOS中的宏定义一致。如使用常量定义一个网站,和一个域名。如:

define(‘WEB_SITE’, 'http://www.baidu.com');

define(’SITE_NAME’, '百度');  define函数的返回值为BOOL类型来判断该常量是否已经定义过;

8. 变量

变量赋值有三种方法:直接赋值,间接赋值,引用赋值

间接赋值:间接赋值后两个变量使用各自的内存,互不干扰

引用赋值:赋值后两个变量执向的是同一块内存地址,当其中一个变量的值改变,另一个变量的也随着改变。使用 & 符号来表示引用。(个人觉得可以理解为类似于双指针)

9. 变量作用域

局部变量,全局变量,静态变量。作用域和其他语言一样,需要注意的是:在php中 全局变量在函数中使用需要在函数中先用global声明;如:

$a  = 0;

function foo(){

global $a;

 $a ++;

echo $a;

}

10.  预定义变量

$_SERVER['REMOTE_ADDR'] :正在浏览当前页面用户的IP地址

$_SERVER['REMOTE_HOST'] : 正在浏览当前页面用户的主机名

$_SERVER['REMOTE_PORT'] : 用户连接到服务器时使用的端口

还有$_SESSION , $_POST, $_GET , $GLOBALS。

11.  拓展

[HTTP_HOST] : 主机名

[HTTP_REFERER] : 用户跳转到当前页面前网页地址

[SERVER_NAME] ,[SERVER_ADDR] :用户IP地址

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一、php可以做什么 php是一种可以在服务器端运行的编程语言,可以运行在Web服务器端。 php是一门后台编程语...
    空谷悠阅读 3,182评论 4 97
  • 软件体系结构 1.单主机结构 界面显示、业务逻辑和数据存取功能都是在用户主机上实现,需要下载软件并安装,易盗版 2...
    sidney_c阅读 784评论 2 3
  • PHP 代表 PHP: Hypertext Preprocessor PHP 文件可包含文本、HTML、JavaS...
    YaoHoney阅读 787评论 1 1
  • 个人学习批处理的初衷来源于实际工作;在某个迭代版本有个BS(安卓手游模拟器)大需求,从而在测试过程中就重复涉及到...
    Luckykailiu阅读 4,824评论 0 11
  • 基本语法 PHP标记 注释 PHP 支持 C,C++ 和 Unix Shell 风格(Perl 风格)的注释。 类...
    给我一炷香的时间阅读 545评论 0 1