简体   繁体   中英

PHP function run time

Kind of a basic question, but I have a page similar to this example:

<?php 
/*
Template Name: Temp
*/
?>

<?php
function myFunction($urls) {
    $q = mysql_query("SELECT * FROM table");
    while ($row = mysql_fetch_array($q)) {
       echo $row['field'];
    }
}

$url1 = $_POST['urls'];
$urls = explode("\r\n",$url1);
?>
<?php get_header(); ?>
    <?php if (get_option('professional_integration_single_top') <> '' && get_option('professional_integrate_singletop_enable') == 'on') echo(get_option('professional_integration_single_top')); ?> 

    <div id="content-top" class="top-alt"></div>
    <div id="content" class="clearfix content-alt">
        <div id="content-area">
        <?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
            <?php get_template_part('includes/breadcrumbs'); ?>

            <?php if (get_option('professional_integration_single_top') <> '' && get_option('professional_integrate_singletop_enable') == 'on') echo(get_option('professional_integration_single_top')); ?>

            <div class="entry clearfix post">
            <?php
                        myFunction($urls);           
                ?>
                <h1 class="title"><?php the_title(); ?></h1>

                <?php if (get_option('professional_page_thumbnails') == 'on') { ?>

                    <?php $thumb = '';
                    $width = 184;
                    $height = 184;
                    $classtext = '';
                    $titletext = get_the_title();

                    $thumbnail = get_thumbnail($width,$height,$classtext,$titletext,$titletext);
                    $thumb = $thumbnail["thumb"]; ?>

                    <?php if($thumb <> '') { ?>
                        <div class="thumb alignleft">
                            <?php print_thumbnail($thumb, $thumbnail["use_timthumb"], $titletext, $width, $height, $classtext); ?>
                            <span class="overlay"></span>
                        </div> <!-- end .thumb -->
                    <?php }; ?>

                <?php }; ?>

                <?php the_content(); ?>
                <?php wp_link_pages(array('before' => '<p><strong>'.esc_html__('Pages','Professional').':</strong> ', 'after' => '</p>', 'next_or_number' => 'number')); ?>
                <?php edit_post_link(esc_html__('Edit this page','Professional')); ?>

            </div> <!-- end .entry -->

            <?php if (get_option('professional_integration_single_bottom') <> '' && get_option('professional_integrate_singlebottom_enable') == 'on') echo(get_option('professional_integration_single_bottom')); ?>

            <?php if (get_option('professional_show_pagescomments') == 'on') comments_template('', true); ?>
        <?php endwhile; endif; ?>
        </div> <!-- end #content-area -->

        <?php get_sidebar(); ?>

    </div> <!-- end #content -->
    <div id="content-bottom" class="bottom-alt"></div>

<?php get_footer(); ?>

EDIT :

I have updated the code to reflect the exact code I'm using.

Why are the myFunction echo outputs within the someFunction function are appearing at the bottom of the document instead of right after $somestring ?

How can I change this code so the myFunction echo outputs will appear in the correct place?

I believe it has something to do with your Wordpress theme. I tested it on my Wordpress blog and it works well. The function echos the value on the place I executed it. Please check your header.php . I think d3v3us is right and is something to do with output buffering.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM