Cá nhân tôi yêu cầu phải thành thạo git, chứ "biết" cái từ này khá mông lung, thành thạo là sử dụng cách thao tác rebase, cherry-pick, ... chứ ko chỉ là commit pushsh nhé
Chủ thớt cho mình hỏi cái này tý, Mình có 1 file xls và mình có import các dữ liệu đó vào. Nhưng khi đọc thì các con số nó bị như này
[I] => 76.09999999999999
[H] => 66.40000000000001
[F] => 84.40000000000001
[H] => 65.90000000000001
Mà thực tế thì các con số đó trong file là 76.1, 66.4, 84.4, 65.9
Trên local mình thì đọc bình thường, nhưng lên server thì bị như thế
gửi bạn đoạn code mình viết trong FullTextSearch.php
<?phpnamespaceApp\Traits;traitFullTextSearch{/**
* Replaces spaces with full text search wildcards
*
* @param string $term
* @return string
*/protectedfunctionfullTextWildcards($term){// removing symbols used by MySQL$reservedSymbols=['-','+','<','>','@','(',')','~'];$term=str_replace($reservedSymbols,'',$term);$words=explode(' ',$term);foreach($wordsas$key=>$word){/*
* applying + operator (required word) only big words
* because smaller ones are not indexed by mysql
*/if(strlen($word)>=1){$words[$key]='+'.$word.'*';}}$searchTerm=implode(' ',$words);return$searchTerm;}/**
* Scope a query that matches a full text search of term.
*
* @param \Illuminate\Database\Eloquent\Builder $query
* @param string $term
* @return \Illuminate\Database\Eloquent\Builder
*/publicfunctionscopeFullTextSearch($query,$columns,$term){$query->whereRaw("MATCH ({$columns}) AGAINST (? IN BOOLEAN MODE)",$this->fullTextWildcards($term));return$query;}}
use App\Traits\FullTextSearch;
bạn bỏ dòng đấy đi nhé! ban đầu mình làm thì mình tạo một folder tên Traits rồi tạo một FullTextSearch.php trong đấy, trong thằng FullTextSearch.php mình viết các hàm tìm kiếm cho nó sau đó mình use nó vào model chứ mình không viết trực tiếp các hàm tìm kiếm vào trong model như code demo bên trên. Bạn nên tách riêng các hàm tìm kiếm của fulltext search rồi use vào model để khi tìm kiếm cho các bảng khác thì mình chỉ cần kế thừa nó vào chứ không phải viết lại nhiều lần. Bên trên mình viết để demo thôi chưa tối ưu cho việc tìm kiếm nhiều bảng. Bạn vào link này để đọc về Trait nhé để hiểu cái trait dùng làm gì: https://viblo.asia/p/tim-hieu-ve-trait-trong-php-bxjeZWENkJZ
=.= mị toàn thấy ngta bảo câu lệnh này của jq tương đương với câu lệnh này của js, vì thường thì ngta học jq sau js mà =.= bạn có chắc đọc xong cái này ngta bỏ jq hem :3
Thực ra nếu bạn chịu khó dành khoảng 2h ra để tìm hiểu về regex thì bạn sẽ thấy nó cực kì đơn giản nếu bạn đã có mô tả chính xác về chuỗi mẫu. Thấy khó xong copy trên mạng về thử rất dễ sai và không đúng những gì mình muốn.
Mình sẽ giải thích về regex mình viết.
Có 2 trường hợp tách nhau bởi dấu OR được biểu diễn qua dấu |
\d biểu thị 1 số tự nhiên từ 0-9
[1-9] biểu thị 1 số tự nhiên từ 1-9
dấu ? biểu thị ý nghĩa cụm đằng trước nó có thể xuất hiện 0 hoặc 1 lần
+ là kí tự đằng trước nó xuất hiện từ 1 lần trở lên
* là kí tự đằng trước nó có thể 0 hoặc nhiều lần
dấu . biểu thị dấu chấm, phân cách giữa phần nguyên và phần thực
Diễn giải bằng lời biểu thức của mình:
Số 0 ở đâu sau đó đến dấu chấm sau đó là đến các số từ 0-9 xuất hiện từ 1 đến nhiều lần OR một số bắt đầu bằng 1 số tự nhiên từ 1-9, sau đó có thể có các số từ 0-9 khác hoặc không, kết thúc bằng phần thực sau dấu chấm hoặc không có phần này cũng được
Còn tùy vào yêu cầu của bạn mà bạn có thể sửa lại. Chứ mình viết không False =)), chúng ta không hiểu ý nhau thôi.
Làm thế nào để mình cập nhật thông tin cho cột Altermates, Images, Videos được vậy nhỉ? Mình xem trên github của Dynamic sitemap ko thấy chỗ nào hướng dẫn cập nhật 3 cột này. Mong nhận được hồi âm, mình cảm ơn !
THẢO LUẬN
chỉ lấy cái url thứ 2 thì thế nào?
Ok, thanks bạn
Mình cũng hay dùng Trait mà. Mình chỉ hỏi trong Trait đấy bạn viết gì thôi, tại vì thấy bạn dùng mà trong bài viết không thấy nói đến.
Cá nhân tôi yêu cầu phải thành thạo git, chứ "biết" cái từ này khá mông lung, thành thạo là sử dụng cách thao tác rebase, cherry-pick, ... chứ ko chỉ là commit pushsh nhé
Chủ thớt cho mình hỏi cái này tý, Mình có 1 file xls và mình có import các dữ liệu đó vào. Nhưng khi đọc thì các con số nó bị như này [I] => 76.09999999999999 [H] => 66.40000000000001 [F] => 84.40000000000001 [H] => 65.90000000000001 Mà thực tế thì các con số đó trong file là 76.1, 66.4, 84.4, 65.9 Trên local mình thì đọc bình thường, nhưng lên server thì bị như thế
gửi bạn đoạn code mình viết trong FullTextSearch.php
use App\Traits\FullTextSearch; bạn bỏ dòng đấy đi nhé! ban đầu mình làm thì mình tạo một folder tên Traits rồi tạo một FullTextSearch.php trong đấy, trong thằng FullTextSearch.php mình viết các hàm tìm kiếm cho nó sau đó mình use nó vào model chứ mình không viết trực tiếp các hàm tìm kiếm vào trong model như code demo bên trên. Bạn nên tách riêng các hàm tìm kiếm của fulltext search rồi use vào model để khi tìm kiếm cho các bảng khác thì mình chỉ cần kế thừa nó vào chứ không phải viết lại nhiều lần. Bên trên mình viết để demo thôi chưa tối ưu cho việc tìm kiếm nhiều bảng. Bạn vào link này để đọc về Trait nhé để hiểu cái trait dùng làm gì: https://viblo.asia/p/tim-hieu-ve-trait-trong-php-bxjeZWENkJZ
=.= mị toàn thấy ngta bảo câu lệnh này của jq tương đương với câu lệnh này của js, vì thường thì ngta học jq sau js mà =.= bạn có chắc đọc xong cái này ngta bỏ jq hem :3
bảo sao nhắn cw cho n thì n qua skype rep -_-
Ồ ra vậy! Em cảm ơn anh
Mình thấy trong model của bạn có dùng Trait FullTextSearch, trong trait đấy viết gì đấy bạn?
sorry bạn, mình miss comment của bạn. Bạn add nó vào file Kernel.php thì nó mới hiểu command đó.
ps: chắc h bạn không cần, mình trả lời cho người sau vậy
mình thấy có ví dụ về img ở đây, không biết phải cái bạn cần không: https://gitlab.com/Laravelium/Sitemap/wikis/Dynamic-sitemap#example-how-to-create-dynamic-sitemap-with-image-tags
@QuangPH cảm ơn bạn nhiều. Mình cũng đã tìm hiểu và viết được biểu thức đúng rồi.
cảm ơn bạn nhiều. Mình cũng có được biểu thức đúng rồi. /^([+-]?[1-9]\d*|0)(.\d*)?$/
E có làm camera cho xe buýt. Mà bên trung tâm cần thông số API của camera từng xe. Mà nói thật e ko hỉu về cái này lắm mấy anh giúp e với
cảm ơn tác giả, có phần 2 chưa ạ
Thực ra nếu bạn chịu khó dành khoảng 2h ra để tìm hiểu về regex thì bạn sẽ thấy nó cực kì đơn giản nếu bạn đã có mô tả chính xác về chuỗi mẫu. Thấy khó xong copy trên mạng về thử rất dễ sai và không đúng những gì mình muốn.
Mình sẽ giải thích về regex mình viết.
Có 2 trường hợp tách nhau bởi dấu OR được biểu diễn qua dấu |
Diễn giải bằng lời biểu thức của mình:
Số 0 ở đâu sau đó đến dấu chấm sau đó là đến các số từ 0-9 xuất hiện từ 1 đến nhiều lần OR một số bắt đầu bằng 1 số tự nhiên từ 1-9, sau đó có thể có các số từ 0-9 khác hoặc không, kết thúc bằng phần thực sau dấu chấm hoặc không có phần này cũng được
Còn tùy vào yêu cầu của bạn mà bạn có thể sửa lại. Chứ mình viết không False =)), chúng ta không hiểu ý nhau thôi.
Làm thế nào để mình cập nhật thông tin cho cột Altermates, Images, Videos được vậy nhỉ? Mình xem trên github của Dynamic sitemap ko thấy chỗ nào hướng dẫn cập nhật 3 cột này. Mong nhận được hồi âm, mình cảm ơn !