30/09/2018, 16:26

Hỏi về Code cắt ký tự trong PHP

Các bạn ơi, mình chưa hiểu đoạn code này cho lắm, tại sao nó lại là i-- nhỉ. đây là bài toán dùng để cắt ký kí tự ạ.

<form method="post">
Nội dung chi tiết bài viết<br>
<textarea id="area" name="details"></textarea><br>
Hiển thị tin vắn tắt với số ký tự<br>
<input id="txt" type="text" name="num" /><br>
<input type="submit" name="submit_name" value="Đăng bài" />
</form>
<?php
$num = $_POST["num"];
$details = $_POST["details"];
$arr_char = array(".", ",", ";", "!", ":", " ");
$start_post = 0;
if($_POST["submit_name"]){
	$intro = substr($details, $start_post, $num);
	for($i=$num; $i>=$start_post; $i--){
		$replace_char = substr($intro, $i, 1);
		if(in_array($replace_char, $arr_char) == TRUE){
			$end_post = $i;
			break;
		}
	}
}
$intro = substr($details, $start_post, $end_post);
echo "<p>$intro...<a href="#">chi tiết</a></p>";
?>
Nguyễn Minh Dũng viết 18:36 ngày 30/09/2018

Đây là vòng lặp for thông thường. Ta có 2 lựa chọn hoặc i++ hoặc i--. Nếu i bắt đầu từ nhỏ đến lớn thì ta viết i++ còn ngược lại thì ta viết i--

X viết 18:32 ngày 30/09/2018

for(i=1; i<10; i++) // i chạy từ 1-> 9
for(i=9; i>=1; i–) // i chạy từ 9-> 1
theo C/C++ =))

Văn Chiến viết 18:28 ngày 30/09/2018

tại sai nó không cho i chạy từ $strart_post nhỉ !

X viết 18:39 ngày 30/09/2018

ngôn ngữ trông lạ mắt nhỉ =)) @@ cơ mà cắt kiểu j vậy? cắt các từ cách nhau bởi "., , ;, !, " hả? thử cho chạy từ đầu xem kết quả như nào. học code là thế. học theo phương pháp “thử cho biết” =))

Văn Chiến viết 18:35 ngày 30/09/2018

hjhj, mình hiểu rồi, code nó sẽ cắt ký tự tránh những từ vô nghĩa ý, có nghĩa code này cắt xong sẽ không còn các từ cuối cùng vô nghĩa trong câu kiểu như ng, ag, mh, tră ,…
Mình hiểu vì sao nó lại cho là i-- rồi!

Văn Chiến viết 18:36 ngày 30/09/2018

Mình không biết là sai ở đâu nữa. w thì không sao mà cứ w+ là lại bị lỗi này.
Parse error: syntax error, unexpected ‘)’ in E:\XAMPP\htdocs\phpbasic\lab8\bai1.php on line 3

$fpart = "bai_tap1.txt";
$fo = fopen($fpart,w+);
$fw = fwrite($fo,"hoc php co ban");
$fc = fclose($fo);
nhhoanglong viết 18:26 ngày 30/09/2018

bạn thử đặt w+ trong nháy kép ==> fopen($fpart,“w+”) xem .

Văn Chiến viết 18:40 ngày 30/09/2018

ek. @nhhoanglong chuẩn luôn, đặt trong ngoặc kép hết lỗi luôn

Bài liên quan
0