首 页 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 尾 页

Redis保存PHP Session方法

发布者: PHPYuan | 发布时间:2018-09-24

歪麦博客

PHP默认就支持保存session到redis,不需任何额外代码。

Redis保存session用的命令是setex,用redis-cli monitor实时监测可以检测到。

setex命令的语法:

setex(key, time, value)

其中,key是键值,time是过期时间,value是字符串类型的值。

具体步骤如下。

1 环境

要用Redis保存session,首先必须要满足下面的条件:

必须有一台安装了Redis服务器。本例用本地服务器Redis,IP为:127.0.0.1,端口:6379。PHP安装了phpredis扩展,通过phpinfo()能够看到扩展,如下图。Redis保存PHP Session方法

PHP能正常访问Redis。测试代码如下,

<?php

$redis = new Redis();

$redis->connect('127.0

想读更多 ->

PHP面试常考易错题之弱类型转换

发布者: PHPYuan | 发布时间:2018-09-24

living example one$tmp = 0 == "a" ? 1:2; echo $tmp; //output 1

考点:

1)PHP的弱类型

2)PHP的运算符的优先级

本节主要讨论PHP弱类型问题,优先级下一章节再进行讨论

分析:

1)在PHP中如果数值和字符串进行比较的时候,PHP会将非数字开头的字符串转换成为整数0,如果前

面有数字值则会转化成为开头的数值进行比较,那么题上的输出为1

2)相反,如果是2a这样的字符串,那么就会返回2,再者如果为a2这种的还是会返回1

3)如果放在js里面那就不一样了。会返回一个:var tmp = 0 =='1a'?1:2; alert(tmp); 这样会输出为2

4)运算符优先级: == > 三元运算 >赋值运算

living example two$str1 = 'yabadabadoo'; $str2 = 'yaba'; if (strpos($str1,$str2)) { echo "\\"" . $str1 . "\\" contains \\"" . $str2 . "\\""; } else { echo "\\"" . $str1 . "\\" does not c

想读更多 ->

PHP非阻塞实现方法

发布者: PHPYuan | 发布时间:2018-09-24

为让 PHP 在后端处理长时间任务时不阻塞,快速响应页面请求,可以有如下措施:

1 使用 fastcgi_finish_request()

如果 PHP 与 Web 服务器使用了 PHP-FPM(FastCGI 进程管理器),那通过 fastcgi_finish_request() 函数能马上结束会话,而 PHP 线程可以继续在后台运行。

echo "program start...";

file_put_contents('log.txt','start-time:'.date('Y-m-d H:i:s'), FILE_APPEND);

fastcgi_finish_request();

sleep(1);

echo 'debug...';

file_put_contents('log.txt', 'start-proceed:'.date('Y-m-d H:i:s'), FILE_APPEND);

sleep(10);

file_put_contents('log.txt', 'end-time:'.date('Y-m-d H:i:s'), FILE_APPEND);

从输出结果可看到,页面打印完program start…,输出第一行到 l

想读更多 ->

开始使用PHPUnit

发布者: PHPYuan | 发布时间:2018-09-24

想试一下单元测试很久了,但是一直没有合适的项目,而且中文网络上的PHPUnit教程要么太旧,要么太乱,所以总也没学会。最近准备把手头的项目重构一下,决定开始使用PHPUnit做单元测试,先照着PHPUnit的官网做了一下Tutorial,虽然已经很简单了,仍然被卡住几次,所以写篇文章记录一下。因为对PHP的包管理系统不熟悉,这篇文章会从安装开始。

1.安装

PHPUnit如果使用PHAR安装的话很简单。Phar归档就像Java的Jar,可以直接被PHP解释器执行。在linux系统下,可以执行下面三条命令:

- wget https://phar.phpunit.de/phpunit.phar

- chmod +x phpunit.phar

- sudo mv phpunit.phar /usr/local/bin/phpunit

考虑到这次的重构会引入比较多类库,我选择了Composer做依赖管理。我在Windows上试过PhpStorm里的Composer,总是失败,感觉是网络不好的原因。这次在Ubuntu下安装很顺利,全局安装Composer之后,在命令行执行

composer global require phpunit/phpunit

全局安装PHPUnit。然后在~/.b

想读更多 ->

比特币钱包RPC的PHP调用方法

发布者: PHPYuan | 发布时间:2018-09-24

当我们希望在Php开发的网站中加入比特币支付功能时,需要解决的第一个 问题,就是如何在Php程序代码中调用比特币钱包的RPC API开发接口来实现 我们期望的功能,例如比特币的支付与接收。

例如,当我们希望在Php代码中给某个比特币地址发送以太币时,可以使用 sendtoaddress 这个RPC接口,可以传入以下参数:

ToAddress:接收地址Amount:发送的比特币数量Comment:备注文本CommentTo:备注接收人AutoFeeSubtract:是否自动扣除手续费,默认值:false

上面的参数中,只有ToAddress和Amount是必须的。当调用完成时, 将返回该笔交易对应的ID。

下面的代码使用GuzzleHttp来调用sendtoaddress接口向指定的地址发送 0.12个比特币:

<?php require('../vendor/autoload.php'); use GuzzleHttp\Client; $client = new Client(); $opts = [ 'json' => [ 'jsonrpc' => '1.0', 'method' => 'sendtoaddress', 'params' => ['1LeiqzD6jCwPcdNNAPiT8ayKg

想读更多 ->

柠檬视频教程福利社:第二篇教程类(PHP从入门到精通)

发布者: PHPYuan | 发布时间:2018-09-24

近期为大家整理了,PHP从入门到精通,成套教程。技多不压身,功到自然成。

1、本着如上的初衷去观看,去学习任何行业,任何资源,当别人想拉你一把的时候,还能抓住你的手的心态去学习全行业的知识点。

柠檬视频教程福利社:第二篇教程类(PHP从入门到精通)

PHP从入门到精通

柠檬视频教程福利社:第二篇教程类(PHP从入门到精通)

PHP从入门到精通

1.那么怎么领取呢?、

2.私信小编回复:PHP

3.即可免费领取部分视频啦

想读更多 ->

一套网站开发高清视频课程分享,学完就可以自己建立网站了!

发布者: PHPYuan | 发布时间:2018-09-24

网站开发是制作一些专业性强的网站,比如说动态网页。ASP、PHP、JSP网页。而且网站开发一般是原创,网站制作可以用别人的模板。

小编为大家收集了一套网站开发的高清视频教程,供大家学习,这套课程从基础到精通,后续还会有更多资源分享,希望能帮助大家!

(文末附带领取方式,小编整理不易,希望对大家有帮助)

一套网站开发高清视频课程分享,学完就可以自己建立网站了!

一套网站开发高清视频课程分享,学完就可以自己建立网站了!

现在的技术人员感觉技术都不如前辈那些大牛,原因就在这3点!

1.技术分工精细了

以前时代所谓的技术都比较综合,当时的IT文化可能还没有形成,一个人什么都能干,培养出了好多孙悟空式的人物,上天入地无所不能,随着时代的发展,人们发现个人英雄虽然厉害,但是也是有上限的,也会遇到瓶颈,另外,单人工作是串行工作,没法做到并行工作,在如今时间就是金钱的时代,怎么能容忍呢,于是就有分

想读更多 ->

程序员:如果你月薪过万,还认为能力决定一切吗?

发布者: PHPYuan | 发布时间:2018-09-24

这是一个整天和代码打交道的群体,也被称为“程序猿”,在不少外行人眼里,很多类似工作的职业人都被称为程序员,其实并不准确。WEB前端也是敲代码,但算不算程序员呢?严格意义上来说并不算,一般说的程序员指的是专门用PHP、ASP、C++、JAVA等计算机语言,进行程序开发、测试、维护的工作人员。

程序员的薪资过万?

不少人认为程序员月薪过万是正常的事,但是还得看所在的城市。很多程序员会选择去北上广深,这些互联网环境比较好的城市,有更多的学习机会,也有更大的发展空间。

内陆地区的程序员相对沿海城市比较“穷”,很多人自称“码农”,当然内陆地区一样有优秀的程序员。大家做着同样的工作,却没有那么好的发展空间,能力强的程序员如果能拿到10K的工资,那商务人员工资最少是他的两倍。

想读更多 ->

程序员新鄙视链出炉,搞Python的看不起PHP?

发布者: PHPYuan | 发布时间:2018-09-23

开发、测试积怨未了,前端、后端相互不服~

前段时间,播妞文章中说到“PHP是世界上最好的语言播妞不赞同”,评论区都快被你们淹死。

程序员新鄙视链出炉,搞Python的看不起PHP?

前一阵,“程序员干架产品经理”,只因“公司产品经理提了个要求,要求APP开发人员可以做到根据用户的手机壳来改变软件主题颜色,然后就干起来了”。

程序员新鄙视链出炉,搞Python的看不起PHP?