【PHP学习笔记】4:常量,魔术常量,常见字符串操作

常量

define()

define()函数的定义如下:

bool define(string $常量名,mixed $常量值[,bool $是否区分大小写=false])

常量不能被改变或者取消定义,使用常量时不需要加$符。

<?php
define('a','啊啊啊',true);
echo A;

输出:

啊啊啊

const关键字

PHP5.3之后可以使用const关键字,像C++那样直接定义常量。

<?php
const LZH="啊啊啊";//const自动区分大小写,常量尽量写成全大写
echo LZH;

输出:

啊啊啊

魔术常量

魔术常量是会随其所在目录、文件位置、上下文环境而变化的预定义常量。魔术常量不区分大小写。

<?php
echo '当前行号:',__LINE__;
echo '<br>';
echo '文件绝对路径:',__FILE__;
echo '<br>';
echo '文件所在目录:',__DIR__;
function myfun(){
    echo '<br>';
    echo '函数名:',__FUNCTION__;
}
myfun();
class mycls{
    static function myfun(){
        echo '<br>';
        echo '所在类名:',__CLASS__;
        echo '<br>';
        echo '所在的类的方法名:',__METHOD__;
    }
}
mycls::myfun();
echo '<br>';
echo '当前命名空间名称:',__NAMESPACE__;

输出:

当前行号:2
文件绝对路径:E:\MyProgram\wamp64\www\lzh\fromPS.php
文件所在目录:E:\MyProgram\wamp64\www\lzh
函数名:myfun
所在类名:mycls
所在的类的方法名:mycls::myfun
当前命名空间名称:

另外还有一个__TRAIT__可以输出Trait的名字,以后学到再看。

常见字符串操作

并置运算符

.来并置连接字符串,或能转换成字符串的数据。

<?php
$a = 'lzh';
$b = 250;
echo $a . ' is ' . $b;

输出:

lzh is 250

strlen()

函数strlen()用于以面向过程的方式获取字符串长度。

<?php
$a = 'lzhSB';
$b = '啊啊啊';
$c = 'lzhSB啊啊啊';
$d = '';//空串
echo strlen($a) . ' ' . strlen($b) . ' ' . strlen($c) . ' ' . strlen($d);

输出:

5 9 14 0

可见在PHP中一个中文字的长度是3。

strpos()

函数strpos()用于返回子串在母串中第一次出现的位置,没有则返回false

<?php
$a = 'lzh SB not OK';
echo strlen($a);
echo "<br>";
echo strpos($a,'not');

输出:

13
7

trim(),ltrim(),rtrim()

函数trim()ltrim()rtrim()分别返回删除了原串两侧、左侧、右侧的连续指定字符后的字符串。

<?php
$a = 'aaabbbaa';
echo trim($a, 'a');
echo "<br>";
echo ltrim($a, 'a');
echo "<br>";
echo rtrim($a, 'a');

输出:

bbb
bbbaa
aaabbb

explode()

函数explode()按指定分隔符分割字符串,形成数组并取其前一部分元素。

array explode(string $分隔符,string $原串[,int $最大长度]);

<?php
$a = 'aacabbacc';
$arry_b = explode('a', $a);
echo $arry_b[0];
echo "<br>";
echo $arry_b[1];
echo "<br>";
echo $arry_b[2];
echo "<br>";
echo $arry_b[3];
echo "<br>";
echo $arry_b[4];

输出:



c
bb
cc

implode()

函数implode()用于连接字符串,做的事情与explode()正好相反。

<?php
$arry_a=['我','是','SBLZH'];
echo implode(',',$arry_a);

输出:

我,是,SBLZH

substr()

函数substr()用于截取字符串的子串,语法是:

string substr(string $原串,int $开始处[,int $前向长度或后向下界]);

开始处为负值时表示从倒数第绝对值的位置开始截取,最后一个可选参数为正时表示向前截取多少个字符,为负数时表示截取到倒数第绝对值个字符。

<?php
$a = '0123456';
echo substr($a, 0, 3);
echo "<br>";
echo substr($a, -5, 3);
echo "<br>";
echo substr($a, -5, -2);

输出:

012
234
234

strstr()

函数strstr()返回从子串在母串中首次出现位置,将母串截断后的其一字符串。语法是:

string strstr(string $母串,string $子串[,bool 模式=false]);

<?php
$a = '0123456';
//默认为false,从首次出现位置到末尾
echo strstr($a,'3');
echo "<br>";
//为true时表示从开始处到首次出现位置
echo strstr($a,'3',true);

输出:

3456
012

substr_count()

函数substr_count返回子串在母串中出现的次数。

<?php
$a = 'ababa';
$b='abacccaba';
echo substr_count($a,'aba');
echo "<br>";
echo substr_count($b,'aba');

输出:

1
2

还有一些不想去测试了,用到再查吧,PHP的函数名起的实在太多太混乱。

猜你喜欢

转载自blog.csdn.net/SHU15121856/article/details/80774530
今日推荐