it seems that <% %> is not exactly the same as <?php ?> in which,
PHP's
<?php echo "something" ?>
will add to the output
but
ERB's
<% puts "something" %>
will not?
actually, i found that <% puts 123 %> prints 123 to the stdout. so the
shell that is running script/server will see "123"... but the 123 is not
part of the webpage generated. Is there a way or option to include that
123 as part of the generated HTML? thanks.
actually... sometimes i want to output multiple things inside of <% %>,
or put everything inside a loop and inside a <% %>, so that's why the
question of <% puts 123 %>
I think you should use something like:
<% for x in y do %>
<%= "#{x.z}, #{x.a}" %>
<% end %>
so for example... if i have the code
<%
begin
t = ''
s = Iconv.conv("UTF-32", "UTF-8", some_utf8_string)
(s.length / 4).times do |i|
b3 = s[i*4 + 2]
b4 = s[i*4 + 3]
t += ("&#x" + "%02X" % b3) + ("%02X" % b4) + ";"
end
rescue => details
t = "exception " + details
end
%>
<%= t %>
then if i don't want to concat the output into t first... then would it
be a bit messy to use
<%
begin
t = ''
s = Iconv.conv("UTF-32", "UTF-8", some_utf8_string)