PHP笔记-环境配置和常见问题处理
目录
一、PHP5.6连接mysql5.6正常mysql8.0报错
二、Apache 配置多个php切换
三、Apache开启gzip
四、php调试模式配置(PhpStorm)
五、Primary script unknown 错误
六、It is not safe to rely on the system's timezone settings 错误
七、ThinkPHP多数据源配置
八、docker php-fpm优化
九、ThinkPHP 调试
十、ThinkPHP常见漏洞
十一、设置最大表单提交限制
十二、ThinkPHP打印日志
十三、PHPExcel问题
十四、xdebug Debug session was finished without being paused
十五、dwt文件
十六、常用语法
十七、EcShop遇到问题
十八、phpqrcode 生成图片显示出错
一、PHP5.6连接mysql5.6正常mysql8.0报错
1:错误
SQLSTATE[HY000] [2054] The server requested authentication method unknown to the client
2:修改
修改mysql配置文件(ProgramData\MySQL\MySQL Server 8.0\my.ini)指定配置项
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
#MySQL8中用户的认证类型(Authentication type)默认为cacheing sha2 password
default_authentication_plugin=mysql_native_password
3:重启mysql
二、Apache 配置多个php切换
方式一:
1:下载5和7版本的PHP
下载对应版本的php(php-Win32-VC):windows.php.net - /downloads/releases/archives/
2:解压下载的文件到指定目录
3:修改配置
拷贝文件夹下的 php.ini-developement 文件改名为php.ini然后编辑
extension_dir = "php5/ext"
date.timezone = Asia/Shanghai
4:开启一些php扩展文件(bz2;curl;fileinfo;gd2;gettext;mysqli;pdo_mysql;mbstring;shmop)
windowns:把对应的扩展前面的注释去掉(win10 64下 php7:curl开启后需要将对应版本的php目录下的libssh2.dll文件拷贝到Apache24\bin中否则不起作用;php5:需要拷贝libssh2.dll libeay32.dll ssleay32.dll)
docker方式进入容器后使用 docker-php-ext-install -j$(nproc) mysqli
官方支持的扩展(通过php -m可查看现有扩展):(bcmath, calendar, exif, gettext, sockets, dba,mysqli, pcntl, pdo_mysql, shmop, sysvmsg, sysvsem, sysvshm)
bz2 扩展的安装, 读写 bzip2(.bz2)压缩文件
apt-get update
apt-get install -y --no-install-recommends libbz2-dev
rm -r /var/lib/apt/lists/* && \
docker-php-ext-install -j$(nproc) bz2
gd 扩展的安装. 图像处理
$ apt update && \
apt install -y libwebp-dev libjpeg-dev libpng-dev libfreetype6-dev && docker-php-source extract && \
rm -r /var/lib/apt/lists/* && \
docker-php-ext-configure gd --with-freetype-dir=/usr/include/ --with-jpeg-dir=/usr/include/ --with-webp-dir=/usr/include/webp/ --with-png-dir=/usr/include/ && \
docker-php-ext-install -j$(nproc) gd
php7报错需要修改命令:docker-php-ext-configure gd --with-freetype=/usr/include/ --with-jpeg=/usr/include/ --with-webp=/usr/include/webp/
zip 扩展的安装
$ apt-get update && \
apt-get install -y --no-install-recommends libzip-dev && \
rm -r /var/lib/apt/lists/* && \
docker-php-ext-install -j$(nproc) zip
redis 扩展安装
下载对应版本的扩展 注意版本一定要和php版本对应否则按照不成功:
igbinary windows.php.net - /downloads/pecl/releases/igbinary/
redis windows.php.net - /downloads/pecl/releases/redis/
解压下载的扩展分别把 php_igbinary.dll和php_redis.dll拷贝到php安装目录下的ext文件夹中
修改php.ini:
添加 extension=php_igbinary.dll和extension=php_redis.dll
重启
sqlserver drivers:
Windows:
1:下载对应版本的压缩包
2:解压文件到ext目录
3:修改php.ini
添加 extension=php_sqlsrv_74_ts.dll和extension=php_pdo_sqlsrv_74_ts.dll
4:下载安装对应版本的ODBC
docker方式:
1:进入容器
2:安装odbc 参考 参考官网如果php docker镜像是php-fpm对应文档的 Debian 系统,如果是php-fpm-alpine对应Alpine Linux系统
问题:apt-get update 报NO_PUBKEY时执行(apt-key adv --recv-keys --keyserver keyserver.ubuntu.com <错误里的key>)并根据错误安装依赖
3:安装php扩展 参考 参考官网如果php docker镜像是php-fpm对应文档的 Alpine 系统,如果是php-fpm-alpine对应 Alpine 系统
还可以通过docker-php-ext-install安装
docker-php-source extract # 创建并初始化 /usr/src/php目录
cd /tmp
curl -L -o /tmp/pdo_sqlsrc.tgz https://pecl.php.net/get/pdo_sqlsrv-5.9.0.tgz
curl -L -o /tmp/sqlsrc.tgz https://pecl.php.net/get/sqlsrv-5.9.0.tgz
tar zxvf pdo_sqlsrv-5.9.0.tgz
tar zxvf sqlsrv-5.9.0.tgz
mv pdo_sqlsrv-5.9.0 /usr/src/php/ext/pdo_sqlsrv
mv sqlsrv-5.9.0 /usr/src/php/ext/sqlsrv
docker-php-ext-install pdo_sqlsrv
docker-php-ext-install sqlsrv
4:php -m 查看安装是否成功
5:退出容器并重启
6:sqlserver 通过odbc连接mysql
下载unixODBC -> cd /opt -> tar -zxvf unixODBC-2.3.9.tar.gz -> cd unixODBC-2.3.9 -> ./configure -> make -> make install -> odbcinst –j查看
下载对应版本mysql Connector/ODBC安装包 -> dpkg -i xxx.deb -> odbcinst -q -d查看是否安装成功 -> vi /etc/odbc.ini
[mysql]
Description = Data source sampleMySQL for accessing MySQL database sampleMySQL
Driver = MySQL ODBC 8.0 Unicode Driver
Server = <ip>
Host = <ip>
Database = <name>
Port = 3306
User = <user>
Password = <pwd>
-> isql -v mysql连接成功
其他扩展安装方法参考 https://blog.csdn.net/lggirls/article/details/89395827
5:在文件夹下运行cmd 输入php.exe -v 如果正常输出表示php好使
5版本运行php.exe -v报错可能需要安装VC11运行环境,官网下载地址如下:
VC9-32 http://www.microsoft.com/zh-CN/download/details.aspx?id=5582
VC9-64 http://www.microsoft.com/zh-CN/download/details.aspx?id=15336
VC11-32 https://www.microsoft.com/zh-CN/download/details.aspx?id=30679
VC14-32 https://www.microsoft.com/en-us/download/details.aspx?id=48145
6:修改Apache配置文件 httpd.conf
添加LoadModule切换时每次打开一个
#LoadModule php7_module "/php7/php7apache2_4.dll"
LoadModule php5_module "/php5/php5apache2_4.dll"
#<IfModule php7_module>
# AddHandler application/x-httpd-php .php
# AddType application/x-httpd-php .php .html
# PHPIniDir "D:/Program Files (x86)/php7/php.ini"
#</IfModule>
<IfModule php5_module>
DirectoryIndex index.html index.php
AddHandler application/x-httpd-php .php
PHPIniDir "D:/Program Files (x86)/php5/php.ini"
</IfModule>
7:新建文件phpinfo.php到apache的htdocs目录;内容为<?php phpinfo();?>
访问phpinfo.ph输出对应版本信息说明切换php版本正常
8:win10 64下php7:curl开启后需要将对应版本的php目录下的libssh2.dll文件拷贝到Apache24\bin中否则不起作用;php5:需要拷贝libssh2.dll libeay32.dll ssleay32.dll
方式二:
1:开启Apache的vhost模式
编辑httpd.conf
打开LoadModule vhost_alias_module modules/mod_vhost_alias.so
打开Include conf/extra/httpd-vhosts.conf
打开LoadModule access_compat_module modules/mod_access_compat.so
编辑httpd-vhosts.conf
添加一个vhost如下,然后重启apache访问ServerName
<VirtualHost *:80>DocumentRoot "${SRVROOT}/htdocs"DirectoryIndex index.htm index.html index.phpServerName www.xxx.comServerAlias xxx.comErrorLog "logs/xxx-error.log"CustomLog "logs/xxx-access.log" common<Directory "${SRVROOT}/htdocs">Options Indexes FollowSymLinksAllowOverride AllOrder allow,denyAllow from allRequire all granted</Directory>
</VirtualHost>
2:开启vhosts后就可以配置不同项目用不同的php了
安装mod_fcgid模块,到apache官网下载对应版本的mod_fcgid模块 地址
下载后解压找到readme文件按照步骤修改配置
1:拷贝mod_fcgid.so文件到Apache24/modules/mod_fcgid.so
2:拷贝httpd-fcgid.conf文件到Apache24/conf/extra/httpd-fcgid.conf
3:修改httpd-fcgid.conf
<IfModule fcgid_module>
# Fast CGI module Settings (PHP 5.3, 5.4)#FcgidInitialEnv PHPRC "D:\\php5"#FcgidInitialEnv PATH "D:\\php5;C:\\WINDOWS\\system32;C:\\WINDOWS;C:\\WINDOWS\\System32\\Wbem;"#上面两项适用统一php版本,否则到vhosts中配置在不同项目中FcgidInitialEnv SystemRoot "C:\\Windows"FcgidInitialEnv SystemDrive "C:"FcgidInitialEnv TEMP "C:\\WINDOWS\\TEMP"FcgidInitialEnv TMP "C:\\WINDOWS\\TEMP"FcgidInitialEnv windir "C:\\WINDOWS"#设置PHP_FCGI_MAX_REQUESTS大于或等于FcgidMaxRequestsPerProcess,防止php-cgi进程 在处理完所有请求前退出FcgidInitialEnv PHP_FCGI_MAX_REQUESTS 1000
# Global mod_fcgid settings#40最大执行时间FcgidIOTimeout 300#10最大空闲时间FcgidConnectTimeout 300#8php-cgi最大的进程数FcgidMaxProcesses 1000FcgidOutputBufferSize 64ProcessLifeTime 240#500php-cgi每个进程的最大请求数FcgidMaxRequestsPerProcess 1000FcgidMinProcessesPerClass 0#限制最大请求字节FcgidMaxRequestLen 2097152#php程序最大文件上传限制50MBfastcgi模式下默认上传文件大小只有131072字节128kb,在php.ini中修改upload_max_filesize等参数无效MaxRequestLen 52428800
# Global Config Example
# Comment out next 4 lines to use per-Directory or per-VirtualHost configuration<Files ~ "\.php$"># 此处配置为全局配置会覆盖vhost中的配置导致vhost中配置无效#Options ExecCGI#映射fcgi执行脚本#AddHandler fcgid-script .php#php-cgi脚本执行路径#FcgidWrapper "D:/ProgramFiles/php5/php-cgi.exe" .php#上面3项适用统一php版本,否则到vhosts中配置在不同项目中</Files>
</IfModule>
4:拷贝mod_fcgid.html文件到Apache24/manual/mod/mod_fcgid.html
5:修改httpd.conf
LoadModule fcgid_module modules/mod_fcgid.so
Include conf/extra/httpd-fcgid.conf
6:修改conf/extra/httpd-vhosts.conf
<VirtualHost *:80>DocumentRoot "${SRVROOT}/htdocs"DirectoryIndex index.htm index.html index.phpServerName www.xxx.comServerAlias xxx.comErrorLog "logs/xxx-error.log"CustomLog "logs/xxx-access.log" commonFcgidInitialEnv PHPRC "D:\\php7"FcgidInitialEnv PATH "D:\\php7;C:\\WINDOWS\\system32;C:\\WINDOWS;C:\\WINDOWS\\System32\\Wbem;"AddHandler fcgid-script .php# 此处路径不能包含空格否则无法启动FcgidWrapper "D:/php7/php-cgi.exe" .php<Directory "${SRVROOT}/htdocs">Options Indexes FollowSymLinks ExecCGIAllowOverride AllOrder allow,denyAllow from allRequire all granted</Directory>
</VirtualHost>
Options相关配置参考:pache配置Options详解_bit小兵的博客-CSDN博客
7:.htaccess 的重定向配置
以前是这样用的RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]会出现错误,无法重定向到 index.php No input file specified.
修改成RewriteRule ^(.*)$ index.php [L,E=PATH_INFO:$1]就好了
8:apache使用mod_fcgid模块后,php_admin_value open_basedir 参数就不起作用了,防止php脚本跨站必须去php.ini配置文件中设置。
[HOST=www.xxx.com]
[PATH=/wwwroot/]
open_basedir=/wwwroot/:/tmp/
9:重启Apache
三、Apache开启gzip
1:修改apache的httpd.conf文件
开启deflate_module和headers_module模块
添加如下代码
<IfModule mod_deflate.c>
# 告诉 apache 对传输到浏览器的内容进行压缩
SetOutputFilter DEFLATE
# 压缩等级 9 最低是1,不建议按最大级别进行压缩,压缩率过高会占更多CPU资源
DeflateCompressionLevel 9
# 设置不对后缀gif,jpg,jpeg,png的图片文件进行压缩
SetEnvIfNoCase Request_URI .(?:gif|jpe?g|png)$ no-gzip dont-vary
# AddOutputFilterByType DEFLATE text/html text/plain text/xml application/x-javascript application/x-httpd-php
# AddOutputFilter DEFLATE js css
</IfModule>
2:验证是否开启
在浏览器调试模式下的network中查看请求的Content-Encoding 可以通过右键Name Status标题栏选择Response Headers选择显示
如果Content-Encoding列中显示gzip说明配置成功
四、php调试模式配置(PhpStorm)
1:下载Xdebug
选择和php版本对应的版本下载 Xdebug: Historical Releases
或者通过Xdebug自动匹配页面下载 Xdebug: Support — Tailored Installation Instructions
将下载的dll文件拷贝到php目录 php/ext 下
2:修改php/php.ini添加如下内容:
[Xdebug]
zend_extension="/php5/ext/php_xdebug.dll"
;允许远程IDE调试
xdebug.remote_enable=on
;远程IDE所在HOST和PORT
xdebug.remote_host=localhost
xdebug.remote_port=9000
xdebug.remote_handler=dbgp
;开启远程调试自动启动
xdebug.remote_autostart = Off
;可以是任意Key,这里设定为PHPSTORM
xdebug.idekey = "PHPSTORM"
;开启自动跟踪
xdebug.auto_trace = On
xdebug.trace_output_dir="/Apache/Xdebug"
;把执行情况的分析文件写入到指定目录中
xdebug.profiler_enable=on
xdebug.profiler_output_dir="/Apache/Xdebug"
3:重启apache
4:idea 配置Xdebug
【File】->【Settings】->【Languages & Frameworks】->【Servers】添加一个server
配置Deployment:如果项目在apache中则不需要此配置,如果项目不在apache需要通过配置这个来上传代码到apache中。此项配置也可以用来远程调试
最后配置一个PHP Web Page服务
最后点击debug图标启动调试即可
五、Primary script unknown 错误
在所有环境都成功部署好后,有的在运行应用时,会出现"Primary script unknown"错误,一般这是由于nginx和php-fpm的用户不同导致的。把nginx.conf和php-fpm.d/www.conf 的user设为同一个就可以了。
修改web目录的权限:chown www-data:www-data web目录 -R chmod 755 web目录 -R
六、It is not safe to rely on the system's timezone settings 错误
1:在页头使用date_default_timezone_set()设置 date_default_timezone_set('PRC'); //东八时区 echo date('Y-m-d H:i:s');
2:在页头使用 ini_set('date.timezone','PRC');或ini_set('date.timezone','Asia/Shanghai');
3:修改 php.ini的date.timezone去掉前面的分号修改为date.timezone = "Asia/Shanghai" (Asia/Shanghai和PRC都可以)
4:重启
七、ThinkPHP多数据源配置
1:配置database.php
在默认数据库后面添加 'db2' => ['type'=>'sqlsrv','hostname'=> '127.0.0.1','database'=> '******','username'=> 'sa','password'=> 'root','hostport'=> '1433','prefix'=> '',],
3:使用
Db::connect('db2') -> name('xx') -> where([['xxx','=','0101001']]) -> limit(0, 10) -> select();// prefix生效
Db::connect('db2') -> table('xx') -> where([['xxx','=','0101001']]) -> limit(0, 10) -> select();// prefix不生效
八、docker php-fpm优化
修配置文件 /usr/local/etc/php-fpm.d/www.conf
pm=dynamic 设置为static,系统会开启设置的数量个php-fpm进程;设置为dynamic,系统会在php-fpm运行开始时启动pm.start_servers个php-fpm进程,然后根据系统的需求动态在pm.min_spare_servers和pm.max_spare_servers之间调整php-fpm进程数。
pm.max_children=30 最大进程数量
pm.start_servers=10 动态方式下的起始进程数量。
pm.min_spare_servers=10 动态方式空闲状态下的最小进程数量。
pm.max_spare_servers=24 动态方式空闲状态下的最大进程数量
pm.max_requests=500 所有子进程重启时间为300s一次,并发量为50,max_children设置为30,max_requests = 300*50/30=500,如果想让进程每隔一小时重生一次,则是3600*50/30=6000。如果pm.max_requests没有设置重启参数,默认为不限制最大服务次数,也就是子进程永远不重启,长时间不重启子进程会导致系统负载异常,处理时间变长等现象。
重启服务
九、ThinkPHP 调试
echo Debug::getUseTime(); // 统计从开始到统计时的时间
echo Debug::getUseMem(); // 统计从开始到统计时的内存使用情况
dump(Debug::getFile(true)); // 获取文件加载信息
echo User::getLastSql(); (new User())->fetchSQL(true)->find(); // 打印sql语句
十、ThinkPHP常见漏洞
1、控制器漏洞:修改library/think/App.php
// 获取控制器名
$controller = strip_tags($result[1] ?: $config['default_controller']);
// 添加
if (!preg_match('/^[A-Za-z](\w)*$/', $controller)) { throw new HttpException(404,'controller not exists' . $controller); }
十一、设置最大表单提交限制
出现这个问题是因为之前用id拼接的方式传参数,后期因为数据量增大导致报错
修改php.ini中的max_input_vars默认是1000
十二、ThinkPHP打印日志
可以通过Log::info('xxxx')的方式来记录日志
十三、PHPExcel问题
1:Warning: ZipArchive::getFromName(): Invalid or unitialized Zip object 版本问题解决方法
$objReader = PHPExcel_IOFactory::createReader('Excel2007');
if(!$objReader->canRead($file)){$objReader = PHPExcel_IOFactory::createReader('Excel5');}
$objPHPExcel = $objReader->load($file,$encode='utf-8');
2:phpExcel导出,在本地正常,在服务器乱码
ob_end_clean(); // header之前先清除缓存区的内容
header('Content-Type: application/vnd.ms-excel');
header('Content-Disposition: attachment;filename="'.$fileName.'.xls"');
header('Cache-Control: max-age=0');
十四、xdebug Debug session was finished without being paused
请求域名要和PHPStorm中的debug servers配置的域名相同
十五、dwt文件
PHP中的一种模板文件PHPStorm要支持打开需要配置一下settings->File Types->Smarty->添加*.dwt
十六、常用语法
$arr = Array('0','1','2','3','4');echo count($arr);
十七、EcShop遇到问题
1:Deprecated: preg_replace()报错
return preg_replace("/{([^\}\{]*)}/e", "\$this->select('\\1');", $source);改为
return preg_replace_callback("/{([^\}\{]*)}/", function($r) { return $this->select($r[1]); }, $source);
2:EcShop使用Smarty模板
3:Parse error: syntax error 指的是语法错误
需开启短标签支持,打开php.ini文件,搜索 short_open_tag = Off 他默认的就是关闭的 ,将他改为On,然后重启apache就可以了
4:在5.3版本之后已经不允许在程序中使用”=&”符号。如果你的网站出现了Deprecated: Assigning the return value of new by reference is deprecated in 错误,别着急,先定位到出错的文件,查找下是不是在程序中使用了”=&”,例如刚才定位到网站程序中发现了下图的程序,发现使用了”=&”符号,去掉‘&’符号之后程序运行正常
5:Declaration of phpbb::set_cookie() should be compatible with integrate::set_cookie...解决办法:把function set_cookie ($username="") 改为function set_cookie ($username="", $remember = NULL)
6:Strict standards: Non-static method cls_sql_dump::get_random_name() should not be called statically把 cls_sql_dump的 function __construct()改到 function cls_sql_dump()的前面把cls_sql_dump的 function get_random_name()改成 static function get_random_name()
7:Strict Standards: Redefining already defined constructor for class alipay in有两种构造函数,一种是跟类同名的函数,一种是 __contruct()。从PHP5.4开始,对这两个函数出现的顺序做了最严格的定义,必须是 __construct() 在前,同名函数在后
8:Strict Standards: mktime()把 mktime() 改成 time()
9:Strict Standards: Non-static method cls_image::gd_version() should not be called staticallyfunction gd_version 改成 static function gd_version
10:Strict Standards: Only variables should be passed by reference in找到提示错误的文件 cls_template.php 及行号把 $tag_sel = array_shift(explode(' ', $tag));改成:$tag_arr = explode(' ', $tag);$tag_sel = array_shift($tag_arr);并且删除 D:\wamp\www\ecshop\temp\caches下所有的文件
11:数据字典 ecshop数据字典_shooke的博客-CSDN博客
十八、phpqrcode 生成图片显示出错
<?php
header('Content-Type: image/png'); // 添加
include('phpqrcode.php'); //引入phpqrcode库文件
$picUrl = 'www.baidu.com'; //二维码扫描出的链接
ob_clean(); // 添加
QRcode::png($picUrl,false(是否生成文件),'L',4);
十九、Apache ab并发压测
apache自带压测工具可用进行压力测试
\bin\ab -n 800 -c 800 url (-n发出800个请求,-c模拟800并发,相当800人同时访问,后面是测试url)
\bin\ab -t 60 -c 100 url (在60秒内发请求,一次100个请求)
\bin\ab -t 60 -c 100 -T "text/plain" -p p.txt url p.txt 是和ab.exe在一个目录p.txt 中可以写参数,如 p=wdp&fq=78
PHP笔记-环境配置和常见问题处理相关推荐
- Android Studio 环境配置及常见问题处理
最近在学习android开发,家里事情也比较多,趁现在有时间更新下android学习笔记.在谈Android studio的一些配置问题之前,请容许感慨一番."我待Android studi ...
- nodejs的下载安装及环境配置及常见问题--react学习必备--nodejs重新安装前的必要卸载
学习react我们首先需要使用react和react-dom这两个包,然而在终端用npm触发这一事件的前提是已经安装了nodejs.提示为 npm : 无法将"npm"项识别为 c ...
- anacondaJupyter相关环境配置及常见问题及pycharm快捷命令(很全!很详细)
anaconda&Jupyter相关环境配置及常见 配置anaconda环境简述 anaconda配置环境变量 为什么要配置环境变量 配置环境变量 如果已经安装了python且已添加了pyth ...
- cocos2d-x环境配置和常见问题
参考 http://www.cocos2d-x.org/projects/cocos2d-x/wiki/How_to_build_and_run_HelloWorld 脚本生成工程 http://ww ...
- CososJS学习笔记(1) 环境配置(填坑版,让你少走弯路!)
这段时间比较了国外的phaser.pixi.create等h5游戏框架以及国内的egret.cocosjs之后,最后还是决定使用cocosjs进行h5游戏的开发. 先简单地说一下个人的观点:首先pix ...
- Windows驱动开发学习笔记(一)—— 环境配置第一个驱动程序
Windows驱动开发学习笔记(一)-- 环境配置&第一个驱动程序 环境配置 第一个驱动程序 环境配置 安装VS2010:https://pan.baidu.com/s/1uZWWxCtB60 ...
- PyQt5 笔记1 -- 环境配置
PyQt5 笔记1 – 环境配置 1.安装 pyqt5 pip3 install pyqt5 2.安装 pyqt5-tools pip3 install pyqt5-tools 3.Pycharm 配 ...
- Kotlin学习笔记(1)- 环境配置
系列文章全部为本人的学习笔记,若有任何不妥之处,随时欢迎拍砖指正.如果你觉得我的文章对你有用,欢迎关注我,我们一起学习进步!kotlin学习笔记系列首发简书和CSDN Kotlin学习笔记(1)- 环 ...
- Kinect开发笔记之三Kinect开发环境配置详解
0.前言: 首先说一下我的开发环境,Visual Studio是2013的,系统是win8的64位版本,SDK是Kinect for windows SDK 1.8版本. ...
最新文章
- Postgresql在Windows下的解压安装
- python关键字是什么颜色,python – Matplotlib:如果使用关键字sym,则使用Boxplot异常值颜色更改...
- 如何成为国内敏捷BI领跑者?这家企业的经验值得借鉴
- kubernetes(k8s)使用声明式管理与 创建yaml模板文件
- centos7配置haproxy
- 如何通过outlet在SAP Spartacus的产品明细页面插入自定义UI
- Spring component detection logic
- 日是这一年的等几天Java代码_java中计算指定日期是一年的第几天的方法
- CentOS 7添加开机启动服务/脚本
- 电商C4D素材,玩转立体作品不是问题
- pytorch torchvision.datasets.ImageFolder
- 【shell】Shell脚本的学习笔记
- python自动填表单_用pythonwebdriver实现自动填表
- Remoting基本原理及其扩展机制(上)
- 西门子plc软件 linux,西门子PLC软件安装总结工程师们都在收藏
- 安全secuerity证券
- win7共享计算机的用户名和密码,win7文件共享访问需要输入用户名和密码如何解决...
- 电子邮件地址怎么写?
- X264 AQ MODE详解
- mac 下netstat理解
热门文章
- html 转换 swf文件怎么打开,swf文件无法打开 swf格式在电脑上怎么打开?swf格式转换的时候提示不是音视频文件...
- QtQuick PC端开发实战_专栏总目录
- 【Redis】实战篇:优惠卷秒杀 (库存超卖问题、一人一单问题)
- 教你批量查询韵达快递物流并分析出包含提前签收的单号
- Java基础之处理事件——添加菜单图标(Sketcher 8 with toolbar buttons and menu icons)...
- KDD 2014 | DeepWalk: 社会表征的在线学习
- 《简约之上:交互设计策略》
- 同是利润增长:英伟达与英特尔股价表现迥异背后
- 准备放弃收购ARM?英伟达公司回应:消息不实
- 日语教程下载 日语学习方法