二分查找BinarySearch

07. November 2017 深度学习 0
php实现: <?php $arr = [1, 4, 3, 2, 7, 9, 33, 23, 6, 77, 44, 99, 12, 5, 6, 3, 1, 91]; function BinarySerch(int $key, array $arr): int { $lo = 0; $hi = count($arr) - 1; while ($lo <= $hi) { $mid = $lo + intval(($hi - $lo) / 2); if ($key < $arr[$mid]) ...

laravel从数组取数据实现分页功能

21. October 2017 Laravel 0
public function redisrest(Request $request) { $users = Redis::hgetall(Auth::id()); // var_dump($data); $perPage = 3; $currentPage = 1; if ($request->has(‘page’)) { $current_page = $request->input(‘page’); $current_page = $current_page <= 0 ? 1 : $current_page; } else { $current_page = 1; } $item = array_slice($users, ($current_page – 1) * $perPage, $perPage); //注释1 $total = count($users); $paginator = new LengthAwarePaginator($item, ...

VueJS学习笔记

13. October 2017 笔记 0
v-bind单向数据绑定,结合class使用方式如下,根据数组中值选择使用不同的class。 v-for使用key增加dom节点和js数组的关联关系,可提升性能。可用于数组和对象的循环。 <ul> <li v-for=\"(st,index) in stu\" v-bind:class=\"{\'A\':\'red\',\'B\':\'blue\'}[st.score]\" :key=\"index\"> {{st.name}} {{st.score}} </li> </ul> v-bind:class 可简写:class, v-on:click简写为@click,函数定义: <button v-on:click=”change()”>Click</button> methods:{methods:{ change(){ this.stu.push({ name:\'mick\',score:\'A\' })} 组件使用:使用props传递值,data必须是一个函数 components:{ \'my-component\':{ props:[\'message\'], props:[\'message\'], template:\'<div>This is a Components{{lijian}}{{message}}</div>\', data:function(){ return { lijian:\'123456\' } } } } <my-component :message=\"test\"></my-component>调用组件 v-on 可以绑定自定义事件,使用$on 监听事件,$emit触发事件 new Vue({ el: \'#app\', data: { total: 0 }, methods: ...

Bootstrap 3.x打印问题

06. September 2017 HTML5 0
问题描述: 使用Bootstrap 3.x的网页打印预览会出现a标签显示超链接,背景图片透明,字段全黑等问题,是bootstrap中设置了@media print相关属性导致。 源码如下: @media print { * { color: #000 !important; text-shadow: none !important; background: transparent !important; box-shadow: none !important; } a, a:visited { text-decoration: underline; } a[href]:after { content: \" (\" attr(href) \")\"; } abbr[title]:after { content: \" (\" attr(title) \")\"; } a[href^=\"javascript:\"]:after, a[href^=\"#\"]:after { content: \"\"; } pre, blockquote { border: ...

PHP添加xdebug插件,配置PHPStorm调试

19. August 2017 PHP 0
第一步:打开https://xdebug.org/wizard.php,把phpinfo()的内容复制进去,然后根据系统提示走步骤,把xdebug.so放到php.ini中。 第二步:修改php.ini文件,基础配置如下:(刚开始使用,以后用到再添加) xdebug.remote_enable=on //开启调试功能 xdebug.remote_host=\"localhost\" //配置调试服务器域名或IP地址 xdebug.remote_port=9000 //设置端口号,不能被占用 xdebug.idekey=\"phpstorm\" //设置idekey名称,和PHPstorm对应 第三步:重启web服务器。 第四步:配置PHPstorm

laravel5.4添加自定义字端保存到表单中

10. August 2017 Laravel 0
第一步:添加字段stdid到users表中 php artisan make:migration add_stdid_to_users_table 然后打开生成的迁移文件,修改up方法 Schema::table(\'users\', function(Blueprint $table) { $table->string(\'stdid\'); }); 修改down方法 Schema::table(\'users\', function(Blueprint $table) { $table->dropColumn(\'stdid\'); }); 然后运行 php artisan make:migration add_stdid_to_users_table 第二步:打开register.blade.php,添加 <div class=\"form-group{{ $errors->has(\'stdid\') ? \' has-error\' : \'\' }}\"> <label for=\"stdid\" class=\"col-md-4 control-label\">学号</label> <div class=\"col-md-6\"> <input id=\"stdid\" type=\"text\" class=\"form-control\" name=\"stdid\" value=\"{{ old(\'stdid\') }}\" required autofocus> @if ($errors->has(\'stdid\')) <span class=\"help-block\"> <strong>{{ ...

laravel5.4 更换字段实现用户登录

10. August 2017 Laravel 0
Laravel默认使用 email 字段来认证。如果你想用其他字段认证,可以在 LoginController 里面定义一个 username 方法。 public function username() { return \'stdid\'; }添加此方法即可实现。 在LoginController中可以看到use AuthenticatesUsers 在AuthenticatesUsers.php中实现了登录,注销等逻辑,默认有 public function username() { return \'email\'; } 通过 return $this->guard()->attempt( $this->credentials($request), $request->has(\'remember\') );实现验证登录,在login.blade.php,在数据库表中,和控制器中,名称要一致,我使用stdid,如下 <input id=\"stdid\" type=\"text\" class=\"form-control\" name=\"stdid\" value=\"{{ old(\'stdid\') }}\" required autofocus>

CentOS下安装MySQL数据库

14. June 2017 Linux 0
下载rpm格式文件,然后根据官网链接安装即可。https://dev.mysql.com/doc/mysql-yum-repo-quick-guide/en/。 在CentOS安装好Mysql数据库修改好密码以后,假设需要设置MySQL可远程链接 mysql -u root -p mysql>use mysql; mysql>update user set host = \'%\' where user = \'root\'; mysql>select host, user from user; FLUSH PRIVILEGES firewall-cmd --zone=public --add-port=3306/tcp --permanent 添加    (--permanent永久生效,没有此参数重启后失效) firewall-cmd --reload 重新载入 firewall-cmd --zone= public --query-port=3306/tcp 查看 firewall-cmd --zone= public --remove-port=3306/tcp --permanent 删除 设置好后,需要修改CentOS防火墙设置,允许3306端口。 systemctl stop firewalld.service 关闭防火墙 systemctl start  firewalld.service 开启防火墙 systemctl disable firewalld.service 禁止开机启动 systemctl status firewalld 查看防火墙运行状态 .配置firewalld-cmd 查看版本: firewall-cmd ...

Mysql外键篇

06. June 2017 DataBase 0
外键作用:保持数据一致性,完整性。外键只能引用外表中的列的值或使用空值。 table2表: CREATE TABLE `table2` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(45) DEFAULT NULL, `age` varchar(45) DEFAULT NULL, `score` varchar(45) DEFAULT NULL, PRIMARY KEY (`id`), KEY `index2` (`age`) ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 table1表: CREATE TABLE `table1` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(45) DEFAULT NULL, `age` varchar(45) DEFAULT NULL, PRIMARY KEY (`id`), ...

HTML5梳理笔记整理

22. May 2017 笔记 0
并非所有的css属性均可继承,与元素外观(文字颜色,字体等)相关的样式会被继承,与元素在页面上布局相关的样式不会被继承,在样式中可以使用inherit强行继承。如:border:inherit; 每个meta元素只能用于一种用途,可在head元素中添加多个meta元素,meta 局部属性 name,content,charset,http-equiv(改写http表头字段) <meta http-equiv=”refresh” content=”2″ />每隔两秒刷新一次。<meta http-equiv=”refresh” content=”2;http://www.lezhi.ren” /> 两秒之后跳转到指定页面。 <link rel=”prefetch” href=”test.html” /> 预先加载即将用到的资源。 <script defer src=”test.js”></script> defer作用是等待浏览器解析完html标签以后再执行脚本。 <script async=”async” src=”test.js”></script> 打破浏览器顺序解析,异步加载脚本,使用外部脚本和内容无关的情况。 <table>标签标题 <caption>,布局标签<thead>,<tbody>,<tfoot> <colgroup span=“2”>前两列,<colgroup span=“2”>(在前面有colgroup设置的列数),第三四列。 布局活用<header>,<details>,<section>,<article>,<aside>,<address>,<footer> form 标签上传图片等媒体文件需要使用enctype=”multipart/form-data”,提升用户友好度,使用autocomplete=”on”,在input上添加autofocus=”autofocus” ,使input输入框自动获取焦点。 form标签中使用<fieldset>对表单元素编组,使用<legend>添加说明标签。 在form外的元素,在form中添加id属性,为form外元素添加form属性如:<button form=”formName” type=”submit”>提交</button>。可以把外部元素和form元素关联在一起。