php01

2018-09-23  本文已影响0人  东邪_黄药师

<?php

// PHP 所有能力都是函数,内置1000多个函数

$str = 'hello';
// 获取字符串长度

echo strlen($str);

// 获取中文字符串(宽字符)的长度
// strlen 只能获取拉丁文的长度
// 内置成员函数直接使用
echo strlen('你好');

// PHP 中专门为 宽字符集 添加了一套 API
// 这一套 API 不在内置的 1000+ 里面,而是在一个模块(php_mbstring.dll)中
// 模块成员必须通过配置文件载入模块过后再使用
// 所有的API 都是 mb_xxxx
echo mb_strlen('你好');

// 配置 PHP 扩展的步骤
// 1. 在 PHP 的安装目录去创建一个 php.in
// 2. extension_dir
// 3. ;extension=php_mbstring.dll
// 4. 默认Apache加载的php.ini 是去 Windows目录找的
// 5. 可以通过 Apache 的配置文件修改默认加载路径 PHPIniDir
==============================================================

// 类型: 1. 索引数组 2. 关联数组
// 方式: 1. array() 2. [] (PHP 5.4)

dict = array( 'hello' => '你好', 'hello1' => '你好', 'hello2' => '你好', ); ================================================================== // var_dump(array_keys(dict));
// // => ['hello', 'hello1', 'hello2']

// var_dump(array_values($dict));
// // => ['你好', '你好', '你好']

// var_dump(array_key_exists('hello', dict)); // var_dump(array_key_exists('hello4',dict));

// 只有当 php.ini 中 display_errors = On 时候
// 才会在界面上显示 notice 错误
// 开发阶段一定设置为 On 生产阶段(上线)设置为 Off

// isset 也可判断数组中是否有指定的键
// 这种类似于 JavaScript 的方式虽然可以达到效果,但是会有警告
// if (dict['foo']) { // echodict['foo'];
// } else {
// echo '没有';
// }

// isset 会吞掉 Undefined index 的警告

if (isset(dict['foo'])) { echodict['foo'];
} else {
echo '没有';
}
// isset(dict['foo']) //dict['foo'] =>
// isset()

// empty(dict['foo']) 相当于 !isset(dict['foo']) || dict['foo'] == false if (empty(dict['foo'])) {
echo '没有';
} else {
echo $dict['foo'];
}

// empty 的实现
// function empty (input) { // return !isset(input) || $input == false
// }
==============================================================
time:
<?php

// 1. 通过代码设置时区,更推荐
date_default_timezone_set('PRC');
// 2. 通过配置文件设置时区
// date.timezone = PRC

// // time 获取到的是 秒数为单位的时间戳
// echo time();

// echo '
';
// // 格式化一个时间戳
// // 第一个参数是一个时间格式
// // 第二个参数是一个时间戳
// // 默认时间戳获取的就是格林威治时间
// echo date('Y-m-d H:i:s', time());

$str = '2017-10-22 15:18:58';

// 对已有时间做格式化
// strtotime 可以用来将一个有格式的时间字符串 转换为一个 时间戳
timestamp = strtotime(str);

// 注意单引号字符串问题
echo date('Y年m月d日<b\r>H:i:s', $timestamp);
============================================================
常量在PHP中的使用:
// PHP 中可以通过 define 函数定义 一个常量
// 常量的特点就是:定义后不能被修改,也是临时存放数据的容器
// 什么时候用常量:一般程序的配置信息(不会在运行过程中修改)都会在常量中定义
// what why how where when

// 变量或函数都是采用 snake_case (小写字母加下划线)命名规则
// 常量是 SNAKE_CASE 命名规则
// 第一个参数常量名称
// 第二个是常量的值

define('SYSTEM_NAME', '阿里百秀');

// 第三个参数是常量名称是否忽略大小写 默认为false 不忽略

  define('SYSTEM_VERSION', '1.0', true);


      echo SYSTEM_NAME;

// echo system_name;

         echo SYSTEM_VERSION;

==============================================================
config:
<?php

/**

define('SYSTEM_NAME', 'HELLO');
define('SYSTEM_VERSION', '1.0.0');
define('DB_HOST', '192.168.110.120');

// // 类似 CSS 的 import 导入文件
require 'config.php';
//require 可以用于在当前脚本中载入一个别的脚本文件并且执行他
//require 在每一次调用时都会载入对应的文件

  echo SYSTEM_NAME;

 require 'config.php';

echo SYSTEM_NAME;

// require_once ==================================
// require_once 如果之前载入过,不再执行(只执行一次)
// 由于类似于 定义常量 定义函数 这种操作不能执行多次
// 所以 require_once 更加合适载入这种文件

require_once 'config.php';

echo SYSTEM_NAME;

require_once 'config.php';

echo SYSTEM_NAME;

=================================================================
include:
require 特点: 一旦被载入的文件不存在就会报一个致命错误,当前文件不再往下执行 -->
include 特点: 载入文件不存在不会报错误(会有警告,警告不用管),当前文件继续执行 -->


image.png
image.png image.png
上一篇下一篇

猜你喜欢

热点阅读