[查看当前php版本]
ls -l /usr/bin/php
/usr/bin/php -> /www/server/php/73/bin/php
php安装文件夹如下 /www/server/php
[切换成7.2]
ln -sf /www/server/php/72/bin/php /usr/bin/php
[查看当前php版本]
ls -l /usr/bin/php
/usr/bin/php -> /www/server/php/73/bin/php
php安装文件夹如下 /www/server/php
[切换成7.2]
ln -sf /www/server/php/72/bin/php /usr/bin/php
class UserVip extends Model
{
}
class User extends Model
{
public function vip(){
return $this->hasOne("UserVip",'user_id','user_id');
}
}
User::with('vip')->whereIn('user_id',['1001691305','1000100023'])->select();
Sql执行结果:
[sql] SELECT * FROM `yoshop_user` WHERE `user_id` IN (1001691305,1000100023)
[sql] SELECT * FROM `yoshop_user_vip` WHERE `user_id` IN (1000100023,1001691305)
1、容器日志查看命令
Usage: docker logs [OPTIONS] CONTAINER
Fetch the logs of a container
Options:
--details Show extra details provided to logs
-f, --follow Follow log output
--since string Show logs since timestamp (e.g. 2013-01-02T13:23:37Z) or relative (e.g. 42m for 42 minutes)
-n, --tail string Number of lines to show from the end of the logs (default "all")
-t, --timestamps Show timestamps
--until string Show logs before a timestamp (e.g. 2013-01-02T13:23:37Z) or relative (e.g. 42m for 42 minutes)
复制代码
2、命令参数的使用场景
1)按照开始时间、结束时间查看容器日志
例如,查看 influxdb 容器最近20分钟到最近10分钟内的日志信息,命令如下:
docker logs --since="20m" --until="10m" influxdb
说明:--since 传入开始时间,--until 传入结束时间。
2)使用UTC格式时间查看容器日志
例如,查看 influxdb 容器自 2022-10-10T02:31:00Z 开始往后的日志信息,命令如下:
docker logs --since="2022-10-10T02:31:00Z" influxdb
3)显示日志的时间戳
例如,查看 influxdb 容器最近20分钟到最近10分钟内的日志信息(显示时间戳),命令如下:
docker logs --since="20m" --until="10m" -t influxdb
说明: -t 或者 --timestamps 参数用于显示时间戳。
4)查看最近n行的日志
例如,查看 influxdb 容器最近20分钟到最近10分钟内,最近100行的日志信息(显示时间戳),命令如下:
docker logs --since="20m" --until="10m" -t --tail 100 influxdb
或者
docker logs --since="20m" --until="10m" -t -n100 influxdb
说明:--tail 100 或者 -n100 表示最近 100行。
5)跟踪日志输出
例如,查看 influxdb 容器最近20分钟以后实时的日志信息(显示时间戳),命令如下:
docker logs -f --since="20m" -t influxdb5
说明:-f 或者 --follow 表示跟踪日志输出。
PHP函数式编程
echo '<pre>';
function memoize($fun){
$list =[];
return function($arg)use($fun,&$list){
$key = md5(json_encode($arg));
if(!empty($list[$key])){
print_r('我是缓存'.PHP_EOL);
return $list[$key];
}
return $list[$key] =$fun($arg);
};
}
$ff=memoize(function ($r){
return $r * $r;
});
print_r($ff(9999)).PHP_EOL;
print_r($ff(9999)).PHP_EOL;
print_r($ff(9999)).PHP_EOL;
//99980001我是缓存
//99980001我是缓存
//99980001
disable_functions = passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv
putenv 框架使用