//PHP中只有双引号("")才能解析变量
$name = "哈哈";
echo "今天真是快乐$name"; //正常输出
echo "今天真是快乐$name啊"; //报错,因为没有变量“$name啊”
//PHP会把$后的合法字符当做变量的一部分
为了避免歧义,我们应该在变量外加花括号({})echo "今天真是快乐{$name}啊"
。
$zy = [‘name‘ => ‘zy‘];
//echo = "我的名字叫zy[‘name‘]";
//这样子写PHP会把$zy[‘name‘]认为是个字符串,因为双引号里可用嵌套单引号
//正确引用数组变量
echo "我的名字叫$zy[name]";
echo "我的名字叫{$zy[‘name‘]}";
//两种都可用,加花括号就不会有歧义
define(‘__NAME‘,‘正义‘);
$str = "常量: {__NAME}"; // 不能解析的
$str = "常量: " . __NAME; //我们可以通过字符串拼接符(.)解析常量
echo $str;
$str = "abcdefg";
// 建议使用花括号的方式, 用[]容易混淆
echo $str[0]; // a
echo $str[1]; // b
echo $str{0}; // c
echo $str{1}; // d
// 设置一个字符, 多余的字符会删除
$str{3} = "6";
$str{3} = "777";
echo $str;
//不要用这种方式对字符串进行增删
echo(); 输出字符串,没有返回值。
die(); 输出字符串, 并且退出代码运行。
print(); 输出字符串,成功返回1,失败返回2。
print_r():可以打印出复杂类型变量的值(如数组,对象),如果给出的是 string、integer 或 float,将打印变量值本身。如果给出的是 array,将会按照一定格式显示键和元素。
printf(); 输出格式化后的字符串。
/**
* 格式占位符(有格式转换的作用)
* %s
* %b 二进制数字
* %c ascii字符
* %d 十进制数字
* %f 浮点数
* %x 16进制数
*/
printf("%s的天气%s, 温度: %s", "广州", "不好", "18度");
sprintf(); 把格式字符串return,由程序员自己输出。
$res = sprintf("%s的天气%s, 温度: %d", "广州", "不好", "18度");
echo $res;
echo $res; //多次输出
$str = " 我在空白中 ";
ehco trim($str); //去除空白了,在源码中可观察
echo $str; //不会影响原字符串
还可去除指定符号
$str = "\t我在空白中\t";
ehco trim($str,"\t");
echo basename(__FILE__);
echo dirname(__FILE__);
$str = "abc";
echo str_pad($str, 6, "."); //abc...
//注意填充中文在utf-8中占3字节
echo str_repeat(‘----‘, 10);
$str = "abcdefg";
$arr = str_split($str);
var_dump($arr);
var_dump(str_split("正义联盟",3)); //每3位为切割一次
echo strrev("abcdefg");
直接翻转中文会乱码。echo str_shuffle("abcdefg");
//变量之间用&分隔
parse_str("id=1&name=2&age=18", $param);
var_dump($param);
echo "strtolower 将字符串转为小写<br>";
echo strtolower("ABCD");
echo "<hr>";
echo "strtoupper 将字符串转为大写<br>";
echo strtoupper(‘abcd‘);
echo "<hr>";
echo "ucfirst 字符串首字母大写<br>";
echo ucfirst("abc def");
echo "<hr>";
echo "ucwords 每个单词的首字母大写<br>";
echo ucwords("abc def");
// 因为为服务器安全需要把html转换为实体
echo htmlentities("<html></html>");
// 把实体字符转换为html标签
echo htmlspecialchars_decode(htmlentities("<html></html>"));
echo chr(65); //A
echo ord(‘A‘);
NULL
字符)。$str = "dkjashjsd‘fgsdkf‘df 1$ a bhjgj ";
echo addslashes($str);
// 删除反斜线
echo stripslashes(addslashes($str));
原文:https://www.cnblogs.com/zylm/p/12602560.html