Giả sử tôi có một "image.jpg" được lưu trữ trong thư mục nội dung và đường dẫn là "www.example.com/public" và tôi chỉ muốn đường dẫn chuỗi đến hình ảnh. Làm thế nào để có được điều này? Tôi KHÔNG muốn các thẻ html chỉ có chuỗi đường dẫn.Làm cách nào để nhận URL đầy đủ vào hình ảnh trong CakePHP?
Trả lời
Sau khi thử các hằng số toàn cục CakePHP khác nhau (ROOT, WEBROOT_DIR, WWW_ROOT, CSS, v.v.) mà không có kết quả, giải pháp chung dường như được tìm thấy trong thuộc tính $ this-> webroot trả về đường dẫn đến ứng dụng webroot . Như vậy đối với các trường hợp khác nhau trên chúng tôi có thể có trong bố trí, quan điểm hoặc các yếu tố của chúng tôi:
Một thẻ hình ảnh đơn giản:
<img src="<?php echo $this->webroot; ?>img/foo.gif" .../ >
Một hình ảnh nền trong một bảng tế bào theo cách cũ:
<td background="<?php echo $this->webroot; ?>img/foo.gif">
Một đầu vào của type = "image":
<input type="image" src="<?php echo $this->webroot; ?>img/go_btn.gif" ... />
I think webroot always work
Đã làm việc cho tôi. Điều quan trọng cần lưu ý là một số globals đã không còn được dùng như 2.4: http://book.cakephp.org/2.0/en/core-libraries/global-constants-and-functions.html –
Lưu ý: Giải pháp này không phải là plugin an toàn . – MjrKusanagi
$this->Html->url('/img/image.jpg') // returns /cake/app/img/image.jpg
Tùy chọn chuyển true
ví dụ một cho URL cơ sở đầy đủ. (mysite.com/cake/app/img/image.jpg
)
WWW_ROOT . 'img/image.jpg' // full/path/to/webroot/img/image.jpg
Hey, tôi đang thử Html-> url nhưng tôi nhận được "Gọi đến một hàm thành viên url() trên một đối tượng không" lỗi. Tôi đã bao gồm "public $ helpers = array ('Html', 'Form');" trong Bộ điều khiển của tôi ... –
@JohnathanAu bạn đang sử dụng phiên bản CakePHP nào? – thaJeztah
phiên bản mới nhất. –
tôi nghĩ rằng bạn cần để tạo nên con đường cho mình. Nếu bạn biết tên của tập tin và thư mục đến nơi nó cư trú, điều gì đang ngăn cản bạn từ cách làm như sau:
$imageUrl = sprintf("%s/%s/%s", FULL_BASE_URL, "public", $imageName);
// this produces http://www.example.com/public/image.png
séc trị giá hằng số này được cung cấp bởi các cakephp 2.0+ FULL_BASE_URL
click here biết tất cả
Nhìn vào bên trong mã nguồn của HtmlHelper::image()
để xem cách trình trợ giúp này tạo URL phù hợp; Chút thay đổi, đây là cách nó đạt được:
$imageUrl = $this->assetUrl('image.jpg', array(
// note: only required if you need the
// URL -including- http://example.com
'fullBase' => true,
'pathPrefix' => IMAGES_URL
));
Các mã nguồn cho Helper :: assetUrl() có thể được tìm thấy ở đây: https://github.com/cakephp/cakephp/blob/2.3.2/lib/Cake/View/Helper.php#L305
Bạn có thể sử dụng:
$this->webroot.'img/abc.jpg'
$ this- > webroot sẽ cung cấp cho bạn đường dẫn hiện tại của ứng dụng của bạn.
Trong CakePHP, thông thường Hình ảnh sẽ được lưu trữ trong thư mục webroot/img.
Điều này link sẽ hữu ích cho bạn.
HtmlHelper::image(string $path, array $options = array())
Tham số:
$path (string) – Path to the image.
$options (array) – An array of html attributes.
Hy vọng bạn tìm thấy điều này là có ích.
Tôi sẽ sử dụng
$this->Html->url('/', true).'img/image.jpg';
$imageUrl = $this->Html->assetUrl('image.jpg', array( // note: only required if you need the // URL -including- http://example.com 'fullBase' => true, 'pathPrefix' => IMAGES_URL ));
làm việc này ngay cả khi bạn đang sử dụng chủ đề
Trong CakePHP phiên bản 3, bạn có thể sử dụng các helper url:
$this->Url->build('/img/image.jpg');
Trong CakePHP 3 (từ phiên bản 3.2.4), bạn có thể sử dụng trình trợ giúp url/hình ảnh, nhưng đường dẫn không cần thiết:
$this->Url->image('image.jpg');
Hoặc tài sản khác:
// Outputs /js/app.js
$this->Url->script('my.js');
// Outputs /css/app.css
$this->Url->css('my.css');
- 1. Làm thế nào để có được đầy đủ url hình ảnh sản phẩm trong Magento
- 2. Tạo url đầy đủ từ CakePHP 2.1.2 Console Shell
- 3. Làm cách nào để nhận được url đầy đủ của trang tôi đang ở trong C#
- 4. CakePHP URL Hình ảnh Tuyệt đối
- 5. Nhận tên miền từ URL đầy đủ
- 6. Hình ảnh đầy đủ, các góc tròn
- 7. Làm cách nào để chuyển URL tương đối thành URL đầy đủ?
- 8. Cách hiển thị hình ảnh có kích thước đầy đủ
- 9. Nhận URL đầy đủ của hành động trong ASP.NET MVC
- 10. Url helper cho url đầy đủ trong asp.net MVC-3
- 11. django url đầy đủ trong get_absolute_url
- 12. Node.js cạo, chuyển đổi hình ảnh src -> URL đầy đủ
- 13. Nhận URL trang chủ đầy đủ tại Kohana 3
- 14. Twitter Bootstrap - Nền có chiều rộng đầy đủ (hình ảnh)
- 15. RenderTargetBitmap + Resource'd VisualBrush = hình ảnh không đầy đủ
- 16. Nền giữ chỗ/hình ảnh trong khi chờ tải hình ảnh đầy đủ?
- 17. Chụp ảnh màn hình đầy đủ với Firefox
- 18. Sử dụng URL đầy đủ với Restangular
- 19. Lấy kích thước hình ảnh bằng Javascript trước khi hình ảnh được tải đầy đủ
- 20. giải mã tinyurl trong R để nhận đường dẫn url đầy đủ?
- 21. iTextSharp Chia tỷ lệ hình ảnh thành trang đầy đủ
- 22. Làm cách nào để biến tỷ lệ hình ảnh thành chiều cao đầy đủ trong Bootstrap - Carousel?
- 23. Làm cách nào để xử lý các tệp không đầy đủ? Nhận ngoại lệ
- 24. Làm cách nào để buộc làm mới các tệp hình ảnh & css trong CakePHP?
- 25. Nhận url yêu cầu đầy đủ, bao gồm các tham số trong bộ điều khiển
- 26. URL nội dung đầy đủ trong tệp Rails .js.erb
- 27. Cách nhận url hình ảnh tĩnh từ URL flickr?
- 28. Cách lấy URL đầy đủ của trang Drupal?
- 29. đầy đủ ứng dụng màn hình android
- 30. Sử dụng Beautiful Soup để có được URL đầy đủ trong mã nguồn
Bạn có muốn nói rằng các tập tin image.jpg được lưu trữ trong đường dẫn mà bạn đã đưa ra? –
Xin lỗi, ý bạn là gì? –
hãy xây dựng câu hỏi của bạn. Hoặc làm cho nó rõ ràng –