09/10/2018, 23:32

Thắc mắc cơ bản về PHP

Mình có vài thắc mắc sau, mong được giải đáp
1. echo và print khác nhau chỗ nào nhỉ ?
2. include() và require_once() khác nhau chỗ nào nữa?
3. Việc đáo hạn session có nghĩa là nếu người đó không làm gì sau một khoảng thời gian thì sẽ bị đá ra ?

Dzị sao mình quăng cái source này vô trang web thì mình thấy nhiều khi mình chạy tới chạy lui mà đang xài mà cứ sau 2 phút là bị out thui à

PHP Code:
function start_my_session() 
{
    
$expire 120// 2 phút    

    
if ($expire == 0) {
        
$expire ini_get("session.gc_maxlifetime");
    } 
    else {
        
ini_set("session.gc_maxlifetime"$expire);
    }

    if (empty(
$_COOKIE***91;'PHPSESSID'***93;)) {
        
session_set_cookie_params($expire);
        @
session_start();
    } 
    else {
        @
session_start();
        
setcookie("PHPSESSID"session_id(), time() + $expire);
    }
//    @session_start();

jiSh@n viết 01:32 ngày 10/10/2018
1. Echo là 1 language structure, print() là function. Theo như PHP Manual thì echo có tốc độ nhanh hơn print().
2.include khác require ở .. thông báo lỗi. Bạn include 1 file ko tồn tại thì chỉ bị warning, còn dùng require thì sẽ cho ra fatal error.
conmalele viết 01:46 ngày 10/10/2018
Quote Được gửi bởi jiSh@n View Post
1. Echo là 1 language structure, print() là function. Theo như PHP Manual thì echo có tốc độ nhanh hơn print().
Cái này mơ hồ và không có cơ sở bác xì pam mờ ơi em thấy có ai đó viết là đôi có khi print còn nhanh hơn echo, 2 cái này tương đương nhau về tốc độ, dù suy luận có vẻ là echo nhanh hơn print vì echo không trả giá trị và không phải là hàm như print
sub viết 01:46 ngày 10/10/2018
một cái khác của include và require là include thì nó lôi tuột cái code nhúng vào file đang chạy, require thì nó chỉ tham khảo các giá trị cần thiết trong file require khi biên dịch.

Còn vụ session, đôi khi nó phụ thuộc vào file cấu hình server
ohyesssvn viết 01:44 ngày 10/10/2018
Quote Được gửi bởi conmalele View Post
Cái này mơ hồ và không có cơ sở bác xì pam mờ ơi em thấy có ai đó viết là đôi có khi print còn nhanh hơn echo, 2 cái này tương đương nhau về tốc độ, dù suy luận có vẻ là echo nhanh hơn print vì echo không trả giá trị và không phải là hàm như print
Cũng thắc mắc như bạn, cho chạy thử cái này:

Code:
<html>
<?php
$inthu='In thu';
$sovonglap=300000;

// Khoi 1
$batdau=time();
for ($i=0;$i<$sovonglap;$i++) echo $inthu;
$thoigianecho=time()-$batdau;

// Khoi 2
$batdau=time();
for ($i=0;$i<$sovonglap;$i++) print($inthu);
$thoigianprint=time()-$batdau;

echo '<br>Thoi gian echo la '.$thoigianecho.' <br>';
echo 'Thoi gian print la '.$thoigianprint.' <br>';

?>
</html>
Kết quả cho thấy echo chạy nhanh hơn tí xíu. Tuy nhiên khi đảo vĩ trí của Khối 1 với Khối 2 thì cho kết quả ngược lại.

Kết luận 2 cái chạy nhanh như nhau.
jiSh@n viết 01:42 ngày 10/10/2018
Quote Được gửi bởi conmalele View Post
Cái này mơ hồ và không có cơ sở bác xì pam mờ ơi em thấy có ai đó viết là đôi có khi print còn nhanh hơn echo, 2 cái này tương đương nhau về tốc độ, dù suy luận có vẻ là echo nhanh hơn print vì echo không trả giá trị và không phải là hàm như print
À, ở đây tôi có 1 chút nhầm lẫn giữa print và hàm printf print cũng là 1 language struct như echo, điểm khác biệt là echo có thể nhận nhiều tham số, còn print thì chỉ nhận được 1 tham số thôi.
pixelart viết 01:42 ngày 10/10/2018
một cái khác của include và require là include thì nó lôi tuột cái code nhúng vào file đang chạy, require thì nó chỉ tham khảo các giá trị cần thiết trong file require khi biên dịch.
không biết cái này đúng ko vậy mí bác, nếu thế thì phải sửa mấy cái include thành require thôi ^^
Bài liên quan
0