PHP基础方法的使用

一些常用的方法

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
<?php
/**
 * 方法(函数),方法名,可带参数,可得到返回,可执行操作
 * */
function scoreLevel($score, $class)
{
    //intval 取整
    switch (intval($score / 10)) {
        case 9:
            return "很好$class<br>";
        case 8:
            return "一般$class<br>";
        default:
            return "不好$class<br>";
    }
}
echo scoreLevel(98, 10);

/**
 * 读取字符串某个字符所在的相对位置
 * 首位置为0,输出值为8
 * */
$str = 'Hello World';
echo strpos($str, 'r') . '<br>';
/**
 *截取字符串中的某段字符
 * 3是初始位置,4是字符串长度,字符串长度可不限制,若不限制,则截取到字符串终止
 * */
echo substr($str, 3, 4) . '<br>';
/**
 * 分割字符串,分割结果为数组,2为每一个数组的长度
 * 数组输出用print_r
 * */
print_r(str_split($str, 2));
echo '<br>';
/**
 *分割字符串,这里使用空格分割,也可用各种方式进行分割,比如说,。!等等
 * */
$str1 = 'Android Java PHP HTML5 C++ C# CSS';
print_r(explode(" ", $str1));
echo '<br>';
/**
 * 拼接字符串
 * */
$num = 100;
$str2 = $str . 'Object-C' . $num;
echo $str2 . '<br>';
/**
 * 数组操作;
 * array_push添加数组
 * 初始化数组示例: $arr = array('user'=>'13800000000','pwd'=>'123456');
 * */
$arr = array();
$arr[0] = 'Android';
$arr[1] = 'Java';
$arr[2] = 'C++';
$arr["name"] = '13800000000';
$arr['pwd'] = '123456';
for ($i = 0; $i < 10; $i++) {
    array_push($arr, '第' . $i . '项');
}
print_r($arr);
echo '<br>';
/**
 * require、include依赖或者包含某个php文件,然后调用该文件中的方法
 * require_once 只引用一次,即使重复引用也只执行一次,而require重复引用的话会报错,
 * */
require_once 'testone/Hello.php';
\testone\printSome();
/**
 * 同一个命名的文件内的同名方法的区别调用;
 * 通过namespace的方式,声明类别,从而调用不同类的方法
 * */
$h = new \testone\lib();
$h->hello();
echo '<br>';
$g = new \testone\hello();
$g->sayHello();
echo '<br>';

require_once 'testtwo/Hello.php';
$k = new \testtwo\hello();
$k->sayHello();
echo '<br>';
$x = new \testtwo\lib();
$x->hello();
echo '<br>';
/**
 *调用类中的成员以及静态方法
 * */
require_once 'testtwo/Hello.php';
$u = new testtwo\staticTest();
$u->mStatic(24, 'Hebin');
echo $u->getAge();
echo $u->getName();
testtwo\staticTest::saySomeThing();
?>
</body>
</html>
<?php

/**
 * 时间戳
 * */
echo time().'<br>';
/**
 * 当前时间,年月日时分秒
 * */
date_default_timezone_set('Asia/Shanghai');
echo date('Y-m-d H:i:s',time()).'<br>';
/**
 * 将数组、对象转化为Json数组
 * */
$arr = array(1,2,3,4,'Hebin','Hello',array('name'=>'Hebin','pwd'=>'123'));
$obj = array('name'=>'Hebin','pwd'=>'123',array(1,2,3));
echo json_encode($obj);

写入数据以及读取数据

<?php

/**
 * 写入数据到文件
 * */
$f = fopen('data', 'w');
if ($f) {
    fwrite($f, 'Hello Hebin');
    fclose($f);
    echo 'ok'.'<br>';
} else {
    echo '创建文件失败'.'<br>';
}

/**
 * 读取文件数据
 */
$r = fopen('data', 'r');
if ($r) {
    $content = fgets($r);
    fclose($r);
    echo $content.'<br>';
} else {
    echo '读取文件失败'.'<br>';
}

echo file_get_contents('data');

绘制图片

<?php

/**
 * 绘制图片
 * */
$img = imagecreate(400, 400);
imagecolorallocate($img, 100, 255, 255);
imageellipse($img, 200, 200, 100, 100, imagecolorallocate($img, 255, 255, 255));
imageline($img, 0, 100, 400, 100, imagecolorallocate($img, 160, 255, 255));
header('Content-type: image/png');
imagepng($img);
echo '<br>';

$mimg = imagecreatefrompng('ic.png');
header('Content-type: image/png');
imagepng($mimg);

Get请求

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<form action="Service.php" method="get">
    用户名:<input name="username" type="text"><br>
    密码:<input name="pwd" type="text"><br>
    <input type="submit" value="确定">
</form>

</body>
</html>


<!DOCTYPE HTML>
<html>
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
<?php
if (isset($_GET['username']) && isset($_GET['pwd'])) {
    echo $_GET['username'] . $_GET['pwd'];
} else {
    echo '请输入完整信息';
} ?>
</body>
</html>

Post请求

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<form action="add.php" method="post">
    语文:<input type="text" name="Chinese"><br>
    数学:<input type="text" name="Math"><br>
    英语:<input type="text" name="English"><br>
    <input type="submit" value="总成绩">
</form>
</body>
</html>

<!DOCTYPE HTML>
<html>
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
<?php
if ($_POST['Chinese'] && $_POST['Math'] && $_POST['English']) {
    echo $_POST['Chinese'] + $_POST['Math'] + $_POST['English'];
} else {
    echo '请输入完整信息';
}
?>
</body>
</html>

数组操作

<?php

/**
 * 数组遍历取值
 * */
$colors = array('红', '橙', '黄', '绿', '蓝', '靛', '紫');

foreach ($colors as $key => $value) {
    echo "值'$value'的键名是'$key'<br>";
}

foreach ($colors as $value) {
    echo "没有键名,只有值'$value'<br>";
}
/**
 * 创建多维数组
 * */
$more = array(
    "name" => array('Java', 'Android', 'C', 'PHP'),
    "time" => array(2, 2, 3, 1)
);
/**
 * 多维数组的遍历
 * */
foreach ($more as $arrays) {
    foreach ($arrays as $key => $value) {
        echo $value . '<br>';
    }
}
/**
 * 多维数组的取值以及删除值
 * */
echo $more["name"][2] . '<br>';
echo $more["time"][2] . '<br>';
unset($more["name"][3]);

在PHP中使用Javascript

<?php

$var1 = "我是PHP变量";
$var2 = "PHP";

echo "<script type='text/javascript'>";
echo "var jsVar = '这是JavaScript变量';";
echo "var phpVar = '这是" . $var2 . "与Javascript组成的变量';";
echo "alert(jsVar);";
echo "alert('" . $var1 . "');";
echo "alert(phpVar);";
echo "</script>";

全局变量、静态变量、可变变量

<?php

$num1 = 6;
$num2 = 0;
$num3 = 10;

function s1()
{
    //使用global声明全局变量
    global $num1, $num2, $num3;
    $num3 = $num1 + $num2;
}

s1();
echo $num3 . '<br>';

function s2()
{
    $GLOBALS['num3'] = $GLOBALS['num1'] + $GLOBALS['num2'];
}

s2();
echo $num3 . '<br>';


/**
 * 静态变量,可用于递归函数或循环程序中,作为计算器使用
 * 静态变量,在离开作用域时,它的值不会改变或消失
 * */
function vars()
{
    $vars = 0;
    echo $vars . '<br>';
    $vars++;
}

echo '第一次运行调试函数<br>';
vars();
echo '第二次运行调试函数<br>';
vars();

function staticVar()
{
    static $vars = 0;
    echo $vars . '<br>';
    $vars++;
}

echo '第一次运行调试函数<br>';
staticVar();
echo '第二次运行调试函数<br>';
staticVar();

/**
 * 可变变量,在变量前面加上$就变成了可变变量
 * */
$age = '18岁';
$$age = '男孩';
echo "$age${$age}<br>$age${'18岁'}<br>";
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值