php学习30天之第一天

Posted 九黎AJ

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php学习30天之第一天相关的知识,希望对你有一定的参考价值。

先说一下我的学习方法,我是按需学习的,需要用到什么就学习什么,所以尽量在博客里留的都是比较实用的代码. 九黎aj留

https://www.php.cn/php/php-variables.html

php的注释方式和js一样
//单行注释
多行注释

php的变量使用
用$来定义
echo来打印数据,echo “字符串”

<?php
echo "<h2>PHP is fun!</h2>";
echo "Hello world!<br>";
echo "I'm about to learn PHP!<br>";
echo "This", " string", " was", " made", " with multiple parameters.";
?>

br换行,h2标记为标题

PHP 变量作用域

变量的作用域是脚本中变量可被引用/使用的部分。

PHP 有四种不同的变量作用域:

local 局部

global

static

parameter

局部和全局作用域
在所有函数外部定义的变量,拥有全局作用域。除了函数外,全局变量可以被脚本中的任何部分访问,要在一个函数中访问一个全局变量,需要使用 global 关键字。

在 PHP 函数内部声明的变量是局部变量,仅能在函数内部访问:

<?php
$x=5;
$y=10;

function myTest()
{
global $x,$y;
$x=$x+$y;
}

myTest();
echo $x; 
//结果是5而不是15,是直接输出的函数外的值
?>

<?php
$x=5;
$y=10;

function myTest()
{
$GLOBALS['y']=$GLOBALS['x']+$GLOBALS['y'];
//PHP 将所有全局变量存储在一个名为 $GLOBALS[index] 的数组中。 index 保存变量的名称。这个数组可以在函数内部访问,也可以直接用来更新全局变量。
} 

myTest();
echo $y;
?>

上述代码在PHP5版本下输出值是15;但是PHP中文网在线实例环境是PHP7版本的,所以输出值应为10。因为在最新的php7版本中,PHPglobal变量处理机制进行了修改,此版本下global关键字只能引用简单变量。详情区别介绍可查看此文:

关于PHP5和PHP7版本下global变量机制有哪些变化?(代码实测)

当一个函数完成时,它的所有变量通常都会被删除。然而,有时候您希望某个局部变量不要被删除。

要做到这一点,请在您第一次声明变量时使用 static 关键字:
static $x=0;
这样就可以反复调用它了.

含参函数调用

<?php

function myTest($x)
{
echo $x;
}

myTest(5);

?>

字符串使用

<?php
$txt1="Learn PHP";
$txt2="www.php.cn";
$cars=array("Volvo","BMW","Toyota");
//数组array

echo $txt1;
echo "<br>";
echo "Study PHP at $txt2";
echo "<br>";
echo "My car is a {$cars[0]}";
?>

结果
Learn PHP
Study PHP at www.php.cn
My car is a Volvo

$x = 5985; var_dump($x);
PHP var_dump() 函数返回变量的数据类型和值:

$t=date(“H”);获取当前小时

$t=date(“c”);
echo $t

参见http://c.biancheng.net/view/6208.html
时间日期格式化
echo date(‘Y-m-d H:i:s’)

<?php
echo date('Y-m-d H:i:s');
//$time=time();echo $time可以直接输出时间戳
?>

时间戳是什么?
时间戳是1970.1.1到现在的总秒数.


申明页面为uft-8格式
header(“Content-type: text/html; charset=utf-8”);

<?php
header("Content-type: text/html; charset=utf-8");
$t=date('Y-m-d H:i:s');
echo "当前时间为 $t"
?>

除了if else外的选择分支

<?php
$favcolor="blue";
switch ($favcolor)
{
case "red":
    echo "你喜欢的颜色是红色!";
    break;
case "blue":
    echo "你喜欢的颜色是蓝色!";
    break;
case "green":
    echo "你喜欢的颜色是绿色!";
    break;
default:
    echo "你喜欢的颜色不是 红, 蓝, 或绿色!";
}
?>

一些常用的函数


截取字符串函数

/**

* @param string $begin 开始字符串

* @param string $end 结束字符串

* @param string $str 需要截取的字符串

* @return string

*/

function get_str($begin,$end,$str){
$b = mb_strpos($str,$begin) + mb_strlen($begin);

$e = mb_strpos($str,$end) - $b;

return mb_substr($str,$b,$e);

}

//这是一个非常好用的截取字符串的函数,入过是html代码,请先用strip_tags()函数将代码转为字符串!

## Curl封装函数

function curlGet($url) {
$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, $url);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

curl_setopt($ch, CURLOPT_HEADER, true);

curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);

return curl_exec($ch);

}

写过Curl的都知道,总是要写一大堆才能使用,现在博主也给你封装好了,拿去用吧,参数应该猪也知道,所以不再标注!

分类树函数,可用于分类,和留言板等等之类的层级关系

/**

* 定义分类树函数

* @param items 需要分类的二维数组

* @param $id 主键(唯一ID)

* @param $belong_id 关联主键的PID

* @son 可以自定义往里面插入就行

*/

function catagory($items,$id='id',$belong_id='belong_id',$son = 'children'){
$tree = array(); //格式化的树

$tmpMap = array(); //临时扁平数据

foreach ($items as $item) {
$tmpMap[$item[$id]] = $item;

}

foreach ($items as $item) {
if (isset($tmpMap[$item[$belong_id]])) {
$tmpMap[$item[$belong_id]][$son][] = &$tmpMap[$item[$id]];

} else {
$tree[] = &$tmpMap[$item[$id]];

}

}

unset($tmpMap);

return $tree;

}

拼接字符串

$str = '1';
    $str .= '2<br>';
    $str .= '3';
    echo $str;

最后输出12
3
拼接这个其实还有一个方法
可以用 连接符.拼接字符串

<?php
    $a = 'Csdn';
    $b = 'http://csdn.net/<br>';
    $c = '一个在线学习编程的网站';
    $str = '欢迎访问“'.$a.'”<br>'.'网址:'.$b.$c;
    echo $str;
?>

然后自己的一点心得,如果是字符串中含有"",请使用单引号区分出来.这样编辑器就不会报错了.

以上是关于php学习30天之第一天的主要内容,如果未能解决你的问题,请参考以下文章

MyCat学习第一天之MyCat简介,配置文件详解,分片操作,分片规则

10天了解perl第一天之——初识perl

数学建模学习笔记集训十天之第一天

暑假第一天之每天一些题系列

三天学会HTML5 之第一天

软考笔记第一天之数制